diff options
author | peter <peter@FreeBSD.org> | 2001-08-10 09:43:22 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2001-08-10 09:43:22 +0000 |
commit | a037ef8f32200b26968e77344bcfb963251fa8b9 (patch) | |
tree | 2b4dc24b830b514680009ead3884ecb1c40974c7 /contrib/cvs/src/error.c | |
parent | 590c411955d6975551ffeaf41d7faf4b26f836d1 (diff) | |
download | FreeBSD-src-a037ef8f32200b26968e77344bcfb963251fa8b9.zip FreeBSD-src-a037ef8f32200b26968e77344bcfb963251fa8b9.tar.gz |
Import cvs-1.11.1p1 onto vendor branch
Diffstat (limited to 'contrib/cvs/src/error.c')
-rw-r--r-- | contrib/cvs/src/error.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/contrib/cvs/src/error.c b/contrib/cvs/src/error.c index fe5877f..9655a97 100644 --- a/contrib/cvs/src/error.c +++ b/contrib/cvs/src/error.c @@ -121,7 +121,9 @@ error (status, errnum, message, va_alist) char *q; char *str; int num; + long lnum; unsigned int unum; + unsigned long ulnum; int ch; char buf[100]; @@ -157,6 +159,21 @@ error (status, errnum, message, va_alist) sprintf (buf, "%d", num); cvs_outerr (buf, strlen (buf)); break; + case 'l': + if (q[2] == 'd') + { + lnum = va_arg (args, long); + sprintf (buf, "%ld", lnum); + } + else if (q[2] == 'u') + { + ulnum = va_arg (args, unsigned long); + sprintf (buf, "%lu", ulnum); + } + else goto bad; + cvs_outerr (buf, strlen (buf)); + q++; + break; case 'x': unum = va_arg (args, unsigned int); sprintf (buf, "%x", unum); @@ -171,6 +188,7 @@ error (status, errnum, message, va_alist) cvs_outerr ("%", 1); break; default: + bad: cvs_outerr (msg, sizeof (msg) - 1); /* Don't just keep going, because q + 1 might point to the terminating '\0'. */ |