implement the nonstandard GNU function fpurge

this is a really ugly and backwards function, but its presence will
prevent lots of broken gnulib software from trying to define its own
version of fpurge and thereby failing to build or worse.
This commit is contained in:
Rich Felker 2011-06-30 11:42:33 -04:00
parent fb62ae74d0
commit 7640497f5f
2 changed files with 12 additions and 0 deletions

View File

@ -158,6 +158,7 @@ int asprintf(char **, const char *, ...);
int vasprintf(char **, const char *, va_list);
void setlinebuf(FILE *);
void setbuffer(FILE *, char *, size_t);
int fpurge(FILE *);
#endif
#ifdef __cplusplus

11
src/stdio/fpurge.c Normal file
View File

@ -0,0 +1,11 @@
#define _GNU_SOURCE
#include "stdio_impl.h"
int __fpurge(FILE *f)
{
f->wpos = f->wbase = f->wend = 0;
f->rpos = f->rend = 0;
return 0;
}
weak_alias(__fpurge, fpurge);