From: David Quintana Date: Tue, 20 May 2014 22:51:38 +0000 (+0000) Subject: I was noted that I forgot to also apply the same fix to the KeRestoreFloatingPointSta... X-Git-Tag: backups/0.3.17@66124~1180 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=6a96b1732b600c89669eae901cb684ba0eb9fb5d;ds=sidebyside I was noted that I forgot to also apply the same fix to the KeRestoreFloatingPointState function. 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 --- diff --git a/reactos/ntoskrnl/ke/i386/cpu.c b/reactos/ntoskrnl/ke/i386/cpu.c index b56414ce0a7..09568113b65 100644 --- a/reactos/ntoskrnl/ke/i386/cpu.c +++ b/reactos/ntoskrnl/ke/i386/cpu.c @@ -1459,7 +1459,8 @@ KeRestoreFloatingPointState(IN PKFLOATING_SAVE Save) __asm { fnclex - frstor [FpState] + mov eax, [FpState] + frstor [eax] }; #endif