Author: akhaldi
Date: Sun Dec 27 17:59:27 2015
New Revision: 70442

URL: http://svn.reactos.org/svn/reactos?rev=70442&view=rev
Log:
[0.4.0] * Merge the ntvdm floppy read/write corruption fix by Hermès in r70424.

Modified:
    branches/ros-branch-0_4_0/   (props changed)
    branches/ros-branch-0_4_0/reactos/   (props changed)
    
branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/bios/bios32/dskbios32.c
    branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/hardware/disk.c

Propchange: branches/ros-branch-0_4_0/
------------------------------------------------------------------------------
--- svn:mergeinfo       (original)
+++ svn:mergeinfo       Sun Dec 27 17:59:27 2015
@@ -1 +1 @@
-/trunk:70000-70321,70323-70324,70328-70337,70339-70340,70347,70349,70354-70358,70360,70363,70369,70373,70375-70378,70381,70384-70385,70387-70389,70398,70400,70408,70436-70437
+/trunk:70000-70321,70323-70324,70328-70337,70339-70340,70347,70349,70354-70358,70360,70363,70369,70373,70375-70378,70381,70384-70385,70387-70389,70398,70400,70408,70424,70436-70437

Propchange: branches/ros-branch-0_4_0/reactos/
------------------------------------------------------------------------------
--- svn:mergeinfo       (original)
+++ svn:mergeinfo       Sun Dec 27 17:59:27 2015
@@ -20,4 +20,4 @@
 
/branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
 /branches/usb-bringup-trunk:55019-55543,55548-55554,55556-55567
 /branches/wlan-bringup:54809-54998
-/trunk/reactos:70000-70321,70323-70324,70328-70337,70339-70340,70347,70349,70354-70358,70360,70363,70369,70373,70375-70378,70381,70384-70385,70387-70389,70398,70400,70408,70436-70437
+/trunk/reactos:70000-70321,70323-70324,70328-70337,70339-70340,70347,70349,70354-70358,70360,70363,70369,70373,70375-70378,70381,70384-70385,70387-70389,70398,70400,70408,70424,70436-70437

Modified: 
branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/bios/bios32/dskbios32.c
URL: 
http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/bios/bios32/dskbios32.c?rev=70442&r1=70441&r2=70442&view=diff
==============================================================================
--- 
branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/bios/bios32/dskbios32.c 
    [iso-8859-1] (original)
+++ 
branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/bios/bios32/dskbios32.c 
    [iso-8859-1] Sun Dec 27 17:59:27 2015
@@ -608,8 +608,8 @@
                 setAH(0x03);
 
                 /* Number of 512-byte sectors in CX:DX */
-                NumSectors = DiskImage->DiskInfo.Cylinders * 
DiskImage->DiskInfo.Heads
-                                                           * 
DiskImage->DiskInfo.Sectors;
+                NumSectors = (ULONG)((ULONG)DiskImage->DiskInfo.Cylinders * 
DiskImage->DiskInfo.Heads)
+                                                                          * 
DiskImage->DiskInfo.Sectors;
                 setCX(HIWORD(NumSectors));
                 setDX(LOWORD(NumSectors));
             }

Modified: 
branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/hardware/disk.c
URL: 
http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/hardware/disk.c?rev=70442&r1=70441&r2=70442&view=diff
==============================================================================
--- branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/hardware/disk.c     
[iso-8859-1] (original)
+++ branches/ros-branch-0_4_0/reactos/subsystems/mvdm/ntvdm/hardware/disk.c     
[iso-8859-1] Sun Dec 27 17:59:27 2015
@@ -342,7 +342,7 @@
 
     /* Set position */
     // Compute the offset
-    FilePointer = ((Cylinder * DiskImage->DiskInfo.Heads + Head)
+    FilePointer = (DWORD)((DWORD)((DWORD)Cylinder * DiskImage->DiskInfo.Heads 
+ Head)
                     * DiskImage->DiskInfo.Sectors + (Sector - 1))
                     * DiskImage->DiskInfo.SectorSize;
     FilePointer = SetFilePointer(DiskImage->hDisk, FilePointer, NULL, 
FILE_BEGIN);
@@ -373,7 +373,7 @@
     if (Result != 0x00)
         return Result;
 
-    BytesToRead = NumSectors * DiskImage->DiskInfo.SectorSize;
+    BytesToRead = (DWORD)NumSectors * DiskImage->DiskInfo.SectorSize;
 
     // FIXME: Consider just looping around filling each time the buffer...
 
@@ -434,7 +434,7 @@
     if (Result != 0x00)
         return Result;
 
-    BytesToWrite = NumSectors * DiskImage->DiskInfo.SectorSize;
+    BytesToWrite = (DWORD)NumSectors * DiskImage->DiskInfo.SectorSize;
 
     // FIXME: Consider just looping around filling each time the buffer...
 


Reply via email to