#include <stdio.h>
#include <stdarg.h>
#include <stdint.h>
+#include <limits.h>
#ifndef REGTEST
-int vfprintf( struct _PDCLIB_file_t * _PDCLIB_restrict stream, const char * _PDCLIB_restrict format, va_list arg )
+int vfprintf_unlocked( struct _PDCLIB_file_t * _PDCLIB_restrict stream,
+ const char * _PDCLIB_restrict format,
+ va_list arg )
{
/* TODO: This function should interpret format as multibyte characters. */
struct _PDCLIB_status_t status;
status.base = 0;
status.flags = 0;
- status.n = SIZE_MAX;
+ status.n = UINT_MAX;
status.i = 0;
status.current = 0;
status.s = NULL;
return status.i;
}
+int vfprintf( struct _PDCLIB_file_t * _PDCLIB_restrict stream,
+ const char * _PDCLIB_restrict format,
+ va_list arg )
+{
+ flockfile( stream );
+ int r = vfprintf_unlocked( stream, format, arg );
+ funlockfile( stream );
+ return r;
+}
+
#endif
#ifdef TEST