Loading...
stdio/FreeBSD/refill.c.patch /dev/null Libc-763.11
--- /dev/null
+++ Libc/Libc-763.11/stdio/FreeBSD/refill.c.patch
@@ -0,0 +1,41 @@
+--- refill.c.bsdnew	2009-11-11 13:33:14.000000000 -0800
++++ refill.c	2009-11-11 13:33:14.000000000 -0800
+@@ -64,8 +64,8 @@ lflush(FILE *fp)
+  * Refill a stdio buffer.
+  * Return EOF on eof or error, 0 otherwise.
+  */
+-int
+-__srefill(FILE *fp)
++__private_extern__ int
++__srefill0(FILE *fp)
+ {
+ 
+ 	/* make sure stdio is set up */
+@@ -130,6 +130,13 @@ __srefill(FILE *fp)
+ 		if ((fp->_flags & (__SLBF|__SWR)) == (__SLBF|__SWR))
+ 			__sflush(fp);
+ 	}
++	return (1);
++}
++
++__private_extern__ int
++__srefill1(FILE *fp)
++{
++
+ 	fp->_p = fp->_bf._base;
+ 	fp->_r = _sread(fp, (char *)fp->_p, fp->_bf._size);
+ 	fp->_flags &= ~__SMOD;	/* buffer contents are again pristine */
+@@ -144,3 +151,13 @@ __srefill(FILE *fp)
+ 	}
+ 	return (0);
+ }
++
++int
++__srefill(FILE *fp)
++{
++	int ret;
++
++	if ((ret = __srefill0(fp)) <= 0)
++		return ret;
++	return __srefill1(fp);
++}