https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a8cf35d0e4333d1ca0b694602629c7dc7408944d

commit a8cf35d0e4333d1ca0b694602629c7dc7408944d
Author:     Eric Kohl <[email protected]>
AuthorDate: Sun Aug 19 14:31:43 2018 +0200
Commit:     Eric Kohl <[email protected]>
CommitDate: Sun Aug 19 14:32:29 2018 +0200

    [SYSSETUP] SetupStartService: Remove the wait loop
    
    CORE-14909
---
 dll/win32/syssetup/install.c | 26 ++------------------------
 1 file changed, 2 insertions(+), 24 deletions(-)

diff --git a/dll/win32/syssetup/install.c b/dll/win32/syssetup/install.c
index e9b5745def..63fa4a28e9 100644
--- a/dll/win32/syssetup/install.c
+++ b/dll/win32/syssetup/install.c
@@ -1508,9 +1508,7 @@ SetupStartService(
 {
     SC_HANDLE hManager = NULL;
     SC_HANDLE hService = NULL;
-    SERVICE_STATUS ServiceStatus;
     DWORD dwError = ERROR_SUCCESS;
-    DWORD dwRetries = 0;
 
     hManager = OpenSCManagerW(NULL,
                               NULL,
@@ -1523,7 +1521,7 @@ SetupStartService(
 
     hService = OpenServiceW(hManager,
                             lpServiceName,
-                            SERVICE_START | (bWait) ? SERVICE_QUERY_STATUS : 
0);
+                            SERVICE_START);
     if (hService == NULL)
     {
         dwError = GetLastError();
@@ -1533,27 +1531,7 @@ SetupStartService(
     if (!StartService(hService, 0, NULL))
     {
         dwError = GetLastError();
-        if (dwError != ERROR_SERVICE_ALREADY_RUNNING)
-            goto done;
-
-        if (bWait)
-        {
-            for (;;)
-            {
-                if (!QueryServiceStatus(hService, &ServiceStatus))
-                    break;
-
-                if (ServiceStatus.dwCurrentState != SERVICE_START_PENDING)
-                    break;
-
-                if (dwRetries == 30)
-                    break;
-
-                dwRetries++;
-
-                Sleep(5000);
-            }
-        }
+        goto done;
     }
 
 done:

Reply via email to