mirror of
https://github.com/reactos/reactos.git
synced 2025-01-05 22:12:46 +00:00
[FAST486]
The VM flag must be cleared before loading the new stack segment on a return from v86 mode. svn path=/trunk/; revision=68107
This commit is contained in:
parent
ad577755ca
commit
4269196da9
1 changed files with 3 additions and 6 deletions
|
@ -339,6 +339,9 @@ Fast486InterruptInternal(PFAST486_STATE State,
|
||||||
/* Switch to the new privilege level */
|
/* Switch to the new privilege level */
|
||||||
State->Cpl = GET_SEGMENT_RPL(IdtEntry->Selector);
|
State->Cpl = GET_SEGMENT_RPL(IdtEntry->Selector);
|
||||||
|
|
||||||
|
/* Clear the VM flag */
|
||||||
|
State->Flags.Vm = FALSE;
|
||||||
|
|
||||||
/* Check the new (higher) privilege level */
|
/* Check the new (higher) privilege level */
|
||||||
switch (State->Cpl)
|
switch (State->Cpl)
|
||||||
{
|
{
|
||||||
|
@ -404,12 +407,6 @@ Fast486InterruptInternal(PFAST486_STATE State,
|
||||||
}
|
}
|
||||||
|
|
||||||
State->GeneralRegs[FAST486_REG_ESP].Long = NewEsp;
|
State->GeneralRegs[FAST486_REG_ESP].Long = NewEsp;
|
||||||
|
|
||||||
if (State->Flags.Vm)
|
|
||||||
{
|
|
||||||
/* Clear the VM flag */
|
|
||||||
State->Flags.Vm = FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Load new CS */
|
/* Load new CS */
|
||||||
|
|
Loading…
Reference in a new issue