Only trigger the installer thread after we got the user token.
authorColin Finck <colin@reactos.org>
Sat, 18 Apr 2009 14:24:02 +0000 (14:24 +0000)
committerColin Finck <colin@reactos.org>
Sat, 18 Apr 2009 14:24:02 +0000 (14:24 +0000)
Fixes a race condition mostly occuring under real hardware.

See issue #4390 for more details.

svn path=/trunk/; revision=40576

reactos/base/services/umpnpmgr/umpnpmgr.c

index af5f98f..6b4b4b7 100644 (file)
@@ -234,9 +234,6 @@ DWORD PNP_ReportLogOn(
 
     DPRINT("PNP_ReportLogOn(%u, %u) called\n", Admin, ProcessId);
 
-    if (hInstallEvent != NULL)
-        SetEvent(hInstallEvent);
-
     /* Get the users token */
     hProcess = OpenProcess(PROCESS_ALL_ACCESS, TRUE, ProcessId);
 
@@ -259,8 +256,8 @@ DWORD PNP_ReportLogOn(
     }
 
     /* Trigger the installer thread */
-    /*if (hInstallEvent != NULL)
-        SetEvent(hInstallEvent);*/
+    if (hInstallEvent)
+        SetEvent(hInstallEvent);
 
     ReturnValue = CR_SUCCESS;