]> pd.if.org Git - pdclib/blobdiff - functions/stdio/vfprintf.c
PDCLIB-20 #resolve Add support for "unusual" cases. Ammend test suite to verify support.
[pdclib] / functions / stdio / vfprintf.c
index 18e9c4b524919abbcce8c002d111a6120699d2ff..7dd7f2dfe1e6b4855c99b2217e063fce91ebf1da 100644 (file)
@@ -12,8 +12,9 @@
 #include <limits.h>
 
 #ifndef REGTEST
+#include <_PDCLIB_io.h>
 
-int vfprintf_unlocked( struct _PDCLIB_file_t * _PDCLIB_restrict stream, 
+int _PDCLIB_vfprintf_unlocked( FILE * _PDCLIB_restrict stream, 
                        const char * _PDCLIB_restrict format, 
                        va_list arg )
 {
@@ -36,7 +37,7 @@ int vfprintf_unlocked( struct _PDCLIB_file_t * _PDCLIB_restrict stream,
         if ( ( *format != '%' ) || ( ( rc = _PDCLIB_print( format, &status ) ) == format ) )
         {
             /* No conversion specifier, print verbatim */
-            putc( *(format++), stream );
+            _PDCLIB_putc_unlocked( *(format++), stream );
             status.i++;
         }
         else
@@ -49,13 +50,13 @@ int vfprintf_unlocked( struct _PDCLIB_file_t * _PDCLIB_restrict stream,
     return status.i;
 }
 
-int vfprintf( struct _PDCLIB_file_t * _PDCLIB_restrict stream, 
+int vfprintf( FILE * _PDCLIB_restrict stream, 
               const char * _PDCLIB_restrict format, 
               va_list arg )
 {
-    flockfile( stream );
-    int r = vfprintf_unlocked( stream, format, arg );
-    funlockfile( stream );
+    _PDCLIB_flockfile( stream );
+    int r = _PDCLIB_vfprintf_unlocked( stream, format, arg );
+    _PDCLIB_funlockfile( stream );
     return r;
 }
 
@@ -64,7 +65,7 @@ int vfprintf( struct _PDCLIB_file_t * _PDCLIB_restrict stream,
 #ifdef TEST
 #define _PDCLIB_FILEID "stdio/vfprintf.c"
 #define _PDCLIB_FILEIO
-
+#include <stddef.h>
 #include <_PDCLIB_test.h>
 
 static int testprintf( FILE * stream, const char * format, ... )