Patch to solve bug 20630 - Services written in Delphi 6: impossible to start by ...
authorJan Slezák <jan.slezak@centrum.cz>
Mon, 9 Nov 2009 09:23:15 +0000 (10:23 +0100)
committerTest Robot <wine-patches-test@office.etersoft.ru>
Tue, 12 Jul 2011 15:13:25 +0000 (19:13 +0400)
programs/services/rpc.c

index 4cd5b37a18759616d7c99d3485cbfcdd2f67bf7f..67b65c9a32db5b5653b34dabf87a0d6082b59641 100644 (file)
@@ -935,6 +935,7 @@ DWORD svcctl_StartServiceW(
     DWORD dwNumServiceArgs,
     LPCWSTR *lpServiceArgVectors)
 {
+    const WCHAR *argv[2];
     struct sc_service_handle *service;
     DWORD err;
 
@@ -943,6 +944,14 @@ DWORD svcctl_StartServiceW(
     if ((err = validate_service_handle(hService, SERVICE_START, &service)) != 0)
         return err;
 
+    if (!dwNumServiceArgs && !lpServiceArgVectors && service->service_entry->name)
+    {
+        argv[0] = service->service_entry->name;
+        argv[1] = NULL;
+        lpServiceArgVectors = argv;
+        dwNumServiceArgs = 1;
+    }
+
     err = service_start(service->service_entry, dwNumServiceArgs, lpServiceArgVectors);
 
     return err;