Library: Bug fix for vfprintf()
authorWill Sowerbutts <will@sowerbutts.com>
Fri, 23 Jan 2015 20:40:42 +0000 (20:40 +0000)
committerWill Sowerbutts <will@sowerbutts.com>
Fri, 23 Jan 2015 20:41:12 +0000 (20:41 +0000)
Library/libs/vfprintf.c

index 7cdcba8..4323dcb 100644 (file)
@@ -177,10 +177,10 @@ int vfprintf(FILE * op, const char *fmt, va_list ap)
                                /* fall thru */
 
                        case 'u':       /* Unsigned decimal */
-                             usproc:val = lval ? va_arg(ap, unsigned long) :
-                                   va_arg(ap,
-                                          unsigned short);
-                               ptmp = __ultostr(val, radix);
+                       usproc:
+                               val = lval ? va_arg(ap, unsigned long) :
+                                   va_arg(ap, unsigned short);
+                               ptmp = __ultostr(val, radix < 0 ? -radix : radix);
                                add = "";
                                if (hash) {
                                        if (radix == 2)