diff --git a/ipl/cfuncs/fpoll.c b/ipl/cfuncs/fpoll.c index 9230e18..33b8121 100644 --- a/ipl/cfuncs/fpoll.c +++ b/ipl/cfuncs/fpoll.c @@ -60,12 +60,9 @@ int fpoll(int argc, descriptor *argv) /*: await data from file */ /* check for data already in buffer */ /* there's no legal way to do this in C; we cheat */ -#if defined(__GLIBC__) && defined(_STDIO_USES_IOSTREAM) /* new GCC library */ +#if defined(__GLIBC__) /* New GCC library */ if (f->_IO_read_ptr < f->_IO_read_end) RetArg(1); -#elif defined(__GLIBC__) /* old GCC library */ - if (f->__bufp < f->__get_limit) - RetArg(1); #elif defined(_FSTDIO) /* new BSD library */ if (f->_r > 0) RetArg(1); @@ -92,7 +89,7 @@ int fpoll(int argc, descriptor *argv) /*: await data from file */ if (r > 0) RetArg(1); /* success */ - else if (r == 0) + else if (r == 0) Fail; /* timeout */ else ArgError(1, 214); /* I/O error */