Hi Bruno,

Patch to fix fpurge.c.

fpurge test now passes.

Alan.
diff --git a/lib/fpurge.c b/lib/fpurge.c
index 0e2931e..d54e80f 100644
--- a/lib/fpurge.c
+++ b/lib/fpurge.c
@@ -115,14 +115,10 @@ fpurge (FILE *fp)
     fp->_Rend = fp->_Next;
   return 0;
 # elif defined __MINT__             /* Atari FreeMiNT */
-  if (fp->__pushed_back)
-    {
-      fp->__bufp = fp->__pushback_bufp;
-      fp->__pushed_back = 0;
-    }
-  fp->__bufp = fp->__buffer;
-  fp->__get_limit = fp->__bufp;
-  fp->__put_limit = fp->__bufp;
+  fp->__pushback_bufp = 0;
+  if (fp->__mode.__write)
+    fp->__put_limit = fp->__buffer;
+  fp->__bufp = fp->__get_limit;
   return 0;
 # else
  #error "Please port gnulib fpurge.c to your platform! Look at the definitions of fflush, setvbuf and ungetc on your system, then report this to bug-gnulib."

Reply via email to