Hi Bruno,

Attached are the freading.c and fwriting.c patches to make them pass.

Alan.
diff --git a/lib/fwriting.c b/lib/fwriting.c
index b7fa455..ba05e65 100644
--- a/lib/fwriting.c
+++ b/lib/fwriting.c
@@ -41,10 +41,9 @@ fwriting (FILE *fp)
   return ((fp->_Mode & 0x1 /* _MOPENR */) == 0
 	  || (fp->_Mode & 0x2000 /* _MWRITE */) != 0);
 #elif defined __MINT__              /* Atari FreeMiNT */
-  return (!fp->__mode.__read
-	  || (fp->__mode.__write
-	      && (fp->__buffer < fp->__put_limit
-		  /*|| fp->__bufp == fp->__get_limit ??*/)));
+  if (!fp->__mode.__read && fp->__mode.__write)
+    return 1;
+  return (fp->__flags & _IO_CURRENTLY_PUTTING) != 0;
 #else
  #error "Please port gnulib fwriting.c to your platform!"
 #endif
diff --git a/lib/freading.c b/lib/freading.c
index f20affc..2399dc7 100644
--- a/lib/freading.c
+++ b/lib/freading.c
@@ -47,10 +47,9 @@ freading (FILE *fp)
   return ((fp->_Mode & 0x2 /* _MOPENW */) == 0
 	  || (fp->_Mode & 0x1000 /* _MREAD */) != 0);
 #elif defined __MINT__              /* Atari FreeMiNT */
-  return (!fp->__mode.__write
-	  || (fp->__mode.__read
-	      && (fp->__buffer < fp->__get_limit
-		  /*|| fp->__bufp == fp->__put_limit ??*/)));
+  if (!fp->__mode.__write && fp->__mode.__read)
+    return 1;
+  return (fp->__flags & _IO_CURRENTLY_GETTING) != 0;
 #else
  #error "Please port gnulib freading.c to your platform!"
 #endif

Reply via email to