X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2F_PDCLIB%2Fprepwrite.c;h=1b1c4b526eecceee5105e9ef544aa761d2928bcc;hb=219271fd548949abce8bd75c34dd42e519418fc4;hp=c5a4c127543b40b14f016c60b3ac0fd04272538d;hpb=9e1a90fce7fa732ebca11e98a41dc8418746b942;p=pdclib diff --git a/functions/_PDCLIB/prepwrite.c b/functions/_PDCLIB/prepwrite.c index c5a4c12..1b1c4b5 100644 --- a/functions/_PDCLIB/prepwrite.c +++ b/functions/_PDCLIB/prepwrite.c @@ -7,20 +7,27 @@ */ #include +#include +#ifndef REGTEST int _PDCLIB_prepwrite( struct _PDCLIB_file_t * stream ) { if ( ( stream->bufidx < stream->bufend ) || ( stream->ungetidx > 0 ) || ( stream->status & ( _PDCLIB_FREAD | _PDCLIB_ERRORFLAG | _PDCLIB_WIDESTREAM | _PDCLIB_EOFFLAG ) ) || ! ( stream->status & ( _PDCLIB_FWRITE | _PDCLIB_FAPPEND | _PDCLIB_FRW ) ) ) { - _PDCLIB_errno = _PDCLIB_EIO; + /* Function called on illegal (e.g. input) stream. + See the comments on implementation-defined errno values in + <_PDCLIB_config.h>. + */ + errno = EINVAL; stream->status |= _PDCLIB_ERRORFLAG; return EOF; } stream->status |= _PDCLIB_FWRITE | _PDCLIB_BYTESTREAM; return 0; } +#endif #ifdef TEST #include <_PDCLIB_test.h>