mirror of
https://github.com/reactos/reactos.git
synced 2024-12-31 19:42:51 +00:00
Fixed [Ke/Nt]WaitForMultipleObjects() bug
svn path=/trunk/; revision=1239
This commit is contained in:
parent
db1ccdf290
commit
3ca24a2c2a
1 changed files with 60 additions and 60 deletions
|
@ -496,7 +496,12 @@ KeWaitForMultipleObjects (
|
||||||
}
|
}
|
||||||
blk = WaitBlockArray;
|
blk = WaitBlockArray;
|
||||||
}
|
}
|
||||||
|
if (Timeout != NULL)
|
||||||
|
{
|
||||||
|
KeAddThreadTimeout(CurrentThread,Timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
do {
|
||||||
KeAcquireDispatcherDatabaseLock(FALSE);
|
KeAcquireDispatcherDatabaseLock(FALSE);
|
||||||
|
|
||||||
for (i = 0; i < Count; i++)
|
for (i = 0; i < Count; i++)
|
||||||
|
@ -525,11 +530,6 @@ KeWaitForMultipleObjects (
|
||||||
return(STATUS_WAIT_0);
|
return(STATUS_WAIT_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Timeout != NULL)
|
|
||||||
{
|
|
||||||
KeAddThreadTimeout(CurrentThread,Timeout);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Append wait block to the KTHREAD wait block list */
|
/* Append wait block to the KTHREAD wait block list */
|
||||||
CurrentThread->WaitBlockList = blk;
|
CurrentThread->WaitBlockList = blk;
|
||||||
|
|
||||||
|
@ -564,7 +564,7 @@ KeWaitForMultipleObjects (
|
||||||
&Status,
|
&Status,
|
||||||
Alertable,
|
Alertable,
|
||||||
WaitMode);
|
WaitMode);
|
||||||
|
} while( Status == STATUS_KERNEL_APC );
|
||||||
if (Timeout != NULL)
|
if (Timeout != NULL)
|
||||||
KeCancelTimer(&KeGetCurrentThread()->Timer);
|
KeCancelTimer(&KeGetCurrentThread()->Timer);
|
||||||
DPRINT("Returning from KeWaitForMultipleObjects()\n");
|
DPRINT("Returning from KeWaitForMultipleObjects()\n");
|
||||||
|
|
Loading…
Reference in a new issue