]> pd.if.org Git - pdclib.old/blobdiff - functions/_PDCLIB/prepread.c
* Test cleanups: surround the code for all functions by #ifndef REGTEST
[pdclib.old] / functions / _PDCLIB / prepread.c
index ef2f70ed72bcda6962745d0b1d053a7c0000e7bf..cf1c2dfe53b7948d0b68619021fd72a6062b9569 100644 (file)
@@ -7,8 +7,9 @@
 */
 
 #include <stdio.h>
+#include <errno.h>
 
-#define _PDCLIB_GLUE_H _PDCLIB_GLUE_H
+#ifndef REGTEST
 #include <_PDCLIB_glue.h>
 
 int _PDCLIB_prepread( struct _PDCLIB_file_t * stream )
@@ -17,7 +18,11 @@ int _PDCLIB_prepread( struct _PDCLIB_file_t * stream )
          ( stream->status & ( _PDCLIB_FWRITE | _PDCLIB_FAPPEND | _PDCLIB_ERRORFLAG | _PDCLIB_WIDESTREAM | _PDCLIB_EOFFLAG ) ) ||
          ! ( stream->status & ( _PDCLIB_FREAD | _PDCLIB_FRW ) ) )
     {
-        _PDCLIB_errno = _PDCLIB_EIO;
+        /* Function called on illegal (e.g. output) stream.
+           See comments on implementation-defined errno values in
+           <_PDCLIB_config.h>.
+        */
+        errno = EINVAL;
         stream->status |= _PDCLIB_ERRORFLAG;
         return EOF;
     }
@@ -31,6 +36,7 @@ int _PDCLIB_prepread( struct _PDCLIB_file_t * stream )
         return 0;
     }
 }
+#endif
 
 #ifdef TEST
 #include <_PDCLIB_test.h>