I was noted that I forgot to also apply the same fix to the KeRestoreFloatingPointSta...
authorDavid Quintana <gigaherz@gmail.com>
Tue, 20 May 2014 22:51:38 +0000 (22:51 +0000)
committerDavid Quintana <gigaherz@gmail.com>
Tue, 20 May 2014 22:51:38 +0000 (22:51 +0000)
Also, for reference: r23894 contained working implemnentations in fpu.c. In r23895 ion "moved" it to cpu.c, killing the MSVC implementation in the process. In 23972, ion added new MSVC code for it, but this new version had the bug. It has remained undiscovered until very recently.

svn path=/trunk/; revision=63391

reactos/ntoskrnl/ke/i386/cpu.c

index b56414c..0956811 100644 (file)
@@ -1459,7 +1459,8 @@ KeRestoreFloatingPointState(IN PKFLOATING_SAVE Save)
     __asm
     {
         fnclex
     __asm
     {
         fnclex
-        frstor [FpState]
+        mov eax, [FpState]
+        frstor [eax]
     };
 #endif
 
     };
 #endif