Author: mnordell
Date: Sat Oct 20 09:48:25 2007
New Revision: 29700
URL:
http://svn.reactos.org/svn/reactos?rev=29700&view=rev
Log:
[COMMENT] Added comment explaining how this code, which at first glance simply
couldn't work, indeed can work. Much code (55 lines to be precise) is hidden inside a
macro.
Modified:
trunk/reactos/ntoskrnl/ke/wait.c
Modified: trunk/reactos/ntoskrnl/ke/wait.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/wait.c?rev=297…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/wait.c (original)
+++ trunk/reactos/ntoskrnl/ke/wait.c Sat Oct 20 09:48:25 2007
@@ -544,6 +544,12 @@
/* Otherwise, we already have the lock, so initialize the wait */
Thread->WaitNext = FALSE;
+ /* Note that KxMultiThreadWait is a macro, defined in ke_x.h, that */
+ /* uses (and modifies some of) the following local */
+ /* variables: */
+ /* Thread, Index, WaitBlock, Timer, Timeout, Hand and Swappable. */
+ /* If it looks like this code doesn't actually wait for any objects */
+ /* at all, it's because the setup is done by that macro. */
KxMultiThreadWait();
/* Start wait loop */