X-Git-Url: https://pd.if.org/git/?p=pdclib;a=blobdiff_plain;f=functions%2Fstdio%2Ffflush.c;h=137fd49d6e63217d5643c9a15e8f9e836cc431f1;hp=a74f77a7663e661a179d0049459bf5b65f96ded4;hb=refs%2Ftags%2FOLD;hpb=34893ecc2200dc7017c36a54cb6c5f4c2378b5ec diff --git a/functions/stdio/fflush.c b/functions/stdio/fflush.c index a74f77a..137fd49 100644 --- a/functions/stdio/fflush.c +++ b/functions/stdio/fflush.c @@ -1,8 +1,55 @@ -// ---------------------------------------------------------------------------- -// $Id$ -// ---------------------------------------------------------------------------- -// Public Domain C Library - http://pdclib.sourceforge.net -// This code is Public Domain. Use, modify, and redistribute at will. -// ---------------------------------------------------------------------------- +/* ---------------------------------------------------------------------------- + * $Id$ + * ---------------------------------------------------------------------------- + * Public Domain C Library - http://pdclib.sourceforge.net + * This code is Public Domain. Use, modify, and redistribute at will. + * --------------------------------------------------------------------------*/ int fflush( FILE * stream ) { /* TODO */ }; + +/* PDPC code - unreviewed +Read the note in fopen.c. +{ +#ifdef __OS2__ + APIRET rc; + ULONG actualWritten; +#endif +#ifdef __MSDOS__ + int errind; + size_t actualWritten; +#endif + + if ((stream->upto != stream->fbuf) && (stream->mode == __WRITE_MODE)) + { +#ifdef __OS2__ + rc = DosWrite(stream->hfile, + (VOID *)stream->fbuf, + (size_t)(stream->upto - stream->fbuf), + &actualWritten); + if (rc != 0) + { + stream->errorInd = 1; + errno = rc; + return (EOF); + } +#endif +#ifdef __MSDOS__ + actualWritten = __write(stream->hfile, + stream->fbuf, + (size_t)(stream->upto - stream->fbuf), + &errind); + if (errind) + { + stream->errorInd = 1; + errno = actualWritten; + return (EOF); + } +#endif +#ifndef __MVS__ + stream->bufStartR += actualWritten; + stream->upto = stream->fbuf; +#endif + } + return (0); +} +*/