]> pd.if.org Git - pdclib.old/blobdiff - functions/stdio/ferror.c
Minimize the amount of internal definitions which get exposed via the user-visible...
[pdclib.old] / functions / stdio / ferror.c
index b6f51ee6092ffe077edb769cca3dc0cb8f418492..f683787e567975ad8cd759b58bee255a16ddc990 100644 (file)
@@ -9,12 +9,21 @@
 #include <stdio.h>
 
 #ifndef REGTEST
+#include <_PDCLIB_io.h>
 
-int ferror( struct _PDCLIB_file_t * stream )
+int ferror_unlocked( FILE * stream )
 {
     return stream->status & _PDCLIB_ERRORFLAG;
 }
 
+int ferror( FILE * stream )
+{
+    flockfile( stream );
+    int error = ferror_unlocked( stream );
+    funlockfile( stream );
+    return error;
+}
+
 #endif
 
 #ifdef TEST
@@ -22,8 +31,9 @@ int ferror( struct _PDCLIB_file_t * stream )
 
 int main( void )
 {
-    TESTCASE( NO_TESTDRIVER );
+    /* Testing covered by clearerr(). */
     return TEST_RESULTS;
 }
 
 #endif
+