summaryrefslogtreecommitdiff
path: root/lib/libc/gen/syslog.c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2001-08-18 22:56:23 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2001-08-18 22:56:23 +0000
commitc2daa7fd0984e62fe491ed5f9bbe2ae36008d266 (patch)
treecddaa91be55b85140d21394af625659ae698ab22 /lib/libc/gen/syslog.c
parent6213d50bba5dce8b587c5197d22fc0b311b0b5df (diff)
deal with -1 from snprintf, if it ever happens
Diffstat (limited to 'lib/libc/gen/syslog.c')
-rw-r--r--lib/libc/gen/syslog.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libc/gen/syslog.c b/lib/libc/gen/syslog.c
index b33a663e406..fa6b9511921 100644
--- a/lib/libc/gen/syslog.c
+++ b/lib/libc/gen/syslog.c
@@ -32,7 +32,7 @@
*/
#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: syslog.c,v 1.10 2001/06/27 00:58:54 lebel Exp $";
+static char rcsid[] = "$OpenBSD: syslog.c,v 1.11 2001/08/18 22:56:22 deraadt Exp $";
#endif /* LIBC_SCCS and not lint */
#include <sys/types.h>
@@ -142,7 +142,9 @@ vsyslog(pri, fmt, ap)
#define DEC() \
do { \
- if (prlen >= tbuf_left) \
+ if (prlen < 0) \
+ prlen = 0; \
+ else if (prlen >= tbuf_left) \
prlen = tbuf_left - 1; \
p += prlen; \
tbuf_left -= prlen; \