]> pd.if.org Git - pdclib.old/blobdiff - functions/_PDCLIB/print.c
PDCLIB-15 PDCLIB-16:
[pdclib.old] / functions / _PDCLIB / print.c
index 7633b3fe478f2a300e5dba702d4a1267d8b88c82..aa397078086236a5e2c31efa12a6cfac338bbdcd 100644 (file)
@@ -104,7 +104,7 @@ static void int2base( uintmax_t value, struct _PDCLIB_status_t * status )
         const char * digits = (status->flags & E_lower) ? 
                                 _PDCLIB_digits : _PDCLIB_Xdigits;
         uintmax_t remaining = value;
-        do {
+        if(status->prec != 0 || remaining != 0) do {
             uintmax_t digit = remaining % status->base;
             remaining /= status->base;
 
@@ -312,6 +312,7 @@ const char * _PDCLIB_print( const char * spec, struct _PDCLIB_status_t * status
                EOF (negative), there is no need for testing for negative here.
             */
             status->prec = va_arg( status->arg, int );
+            ++spec;
         }
         else
         {