Author: pschweitzer
Date: Sat Feb 13 09:16:45 2016
New Revision: 70725
URL: http://svn.reactos.org/svn/reactos?rev=70725&view=rev
Log:
[EXT2]
Add the ReactOS famous... hack? fix? whatever? already present in FastFAT, NTFS...:
When accessing a floppy disk, our floppy storage stack can return that the disk type is unknown (some would say it's legit - see comments in FastFAT) and will also return a disk sector size of 0.
Then, when trying to read the floppy disk with said size, everything goes wrong (null length read is never a good thing). So, as in any other FSD in ReactOS, for disk sector size to 512 bytes in this really specific case.
This fixes BSOD when having a floppy drive in ReactOS (whatever its filesystem).
CORE-10464 #resolve #comment Fixed with r70725
Modified:
trunk/reactos/drivers/filesystems/ext2/src/fsctl.c
Modified: trunk/reactos/drivers/filesystems/ext2/src/fsctl.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ext2/s…
==============================================================================
--- trunk/reactos/drivers/filesystems/ext2/src/fsctl.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ext2/src/fsctl.c [iso-8859-1] Sat Feb 13 09:16:45 2016
@@ -1496,6 +1496,13 @@
_SEH2_LEAVE;
}
+#ifdef __REACTOS__
+ if (DiskGeometry.MediaType == Unknown)
+ {
+ DiskGeometry.BytesPerSector = 512;
+ }
+#endif
+
Status = IoCreateDevice(
MainDeviceObject->DriverObject,
sizeof(EXT2_VCB),