fix multiple stdio functions' behavior on zero-length operations
[oweals/musl.git] / src / stdio / __uflow.c
1 #include "stdio_impl.h"
2
3 /* This function will never be called if there is already data
4  * buffered for reading. Thus we can get by with very few branches. */
5
6 int __uflow(FILE *f)
7 {
8         unsigned char c;
9         if ((f->rend || !__toread(f)) && f->read(f, &c, 1)==1) return c;
10         return EOF;
11 }