diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 7381e3d5a..4527099c7 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,9 @@
+2008-08-09  Corinna Vinschen  <corinna@vinschen.de>
+
+	* fhandler_floppy.cc (fhandler_dev_floppy::raw_read): Don't set
+	eom_detected when EOF is detected, thus returning 0 instead of
+	setting errno to ENOSPC.
+
 2008-08-07  Corinna Vinschen  <corinna@vinschen.de>
 
 	* fhandler.cc (fhandler_base::open): Use Samba workaround generally
diff --git a/winsup/cygwin/fhandler_floppy.cc b/winsup/cygwin/fhandler_floppy.cc
index 48f901014..f0e19c952 100644
--- a/winsup/cygwin/fhandler_floppy.cc
+++ b/winsup/cygwin/fhandler_floppy.cc
@@ -296,10 +296,7 @@ fhandler_dev_floppy::raw_read (void *ptr, size_t& ulen)
 	      if (current_position + bytes_to_read >= drive_size)
 		bytes_to_read = drive_size - current_position;
 	      if (!bytes_to_read)
-		{
-		  eom_detected (true);
-		  break;
-		}
+		break;
 
 	      debug_printf ("read %d bytes %s", bytes_to_read,
 			    len < devbufsiz ? "into buffer" : "directly");