--- src/sys/kern/subr_prf.c 2005/11/21 21:56:14 1.10 +++ src/sys/kern/subr_prf.c 2006/12/29 13:15:33 1.10.4.1 @@ -277,7 +277,7 @@ log_console(struct uio *uio) c = imin(uio->uio_resid, CONSCHUNK); error = uiomove(consbuffer, c, uio); if (error != 0) - return; + break; for (i = 0; i < c; i++) { msglogchar(consbuffer[i], pri); if (consbuffer[i] == '\n') @@ -754,7 +754,8 @@ number: if (neg) tmp++; - if (!ladjust && width && (width -= tmp) > 0) + if (!ladjust && padc != '0' && width && + (width -= tmp) > 0) while (width--) PCHAR(padc); if (neg) @@ -767,6 +768,9 @@ number: PCHAR('x'); } } + if (!ladjust && width && (width -= tmp) > 0) + while (width--) + PCHAR(padc); while (*p) PCHAR(*p--);