Module Name: src
Committed By: christos
Date: Thu Nov 24 01:45:39 UTC 2011
Modified Files:
src/sys/kern: subr_prf.c
Log Message:
- fixed signed/unsigned comparison
- don't write/increment sbuf if NULL
To generate a diff of this commit:
cvs rdiff -u -r1.147 -r1.148 src/sys/kern/subr_prf.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/kern/subr_prf.c
diff -u src/sys/kern/subr_prf.c:1.147 src/sys/kern/subr_prf.c:1.148
--- src/sys/kern/subr_prf.c:1.147 Wed Nov 23 20:14:19 2011
+++ src/sys/kern/subr_prf.c Wed Nov 23 20:45:39 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: subr_prf.c,v 1.147 2011/11/24 01:14:19 christos Exp $ */
+/* $NetBSD: subr_prf.c,v 1.148 2011/11/24 01:45:39 christos Exp $ */
/*-
* Copyright (c) 1986, 1988, 1991, 1993
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: subr_prf.c,v 1.147 2011/11/24 01:14:19 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: subr_prf.c,v 1.148 2011/11/24 01:45:39 christos Exp $");
#include "opt_ddb.h"
#include "opt_ipkdb.h"
@@ -1079,7 +1079,7 @@ vsnprintf(char *bf, size_t size, const c
retval = kprintf(fmt, TOBUFONLY, &p, bf, ap);
if (bf && size > 0) {
/* nul terminate */
- if (size <= retval)
+ if (size <= (size_t)retval)
bf[size - 1] = '\0';
else
bf[retval] = '\0';
@@ -1142,10 +1142,8 @@ vsnprintf(char *bf, size_t size, const c
#define KPRINTF_PUTCHAR(C) { \
if (oflags == TOBUFONLY) { \
- if ((vp == NULL) || (sbuf < tailp)) \
+ if (sbuf && ((vp == NULL) || (sbuf < tailp))) \
*sbuf++ = (C); \
- else \
- sbuf++; \
} else { \
putchar((C), oflags, vp); \
} \