Module: wine Branch: master Commit: eafb44d4e1fd6ac455e9529b1d74385c2163b1f4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=eafb44d4e1fd6ac455e9529b1d...
Author: Francois Gouget fgouget@codeweavers.com Date: Mon Aug 29 19:53:04 2011 +0200
services: Refuse to start disabled services.
---
dlls/advapi32/tests/service.c | 2 +- programs/services/rpc.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/advapi32/tests/service.c b/dlls/advapi32/tests/service.c index 044394a..d2ef54d 100644 --- a/dlls/advapi32/tests/service.c +++ b/dlls/advapi32/tests/service.c @@ -2151,7 +2151,7 @@ static void test_start_stop(void) goto cleanup; } le = try_start_stop(svc_handle, displayname, is_nt4); - todo_wine ok(le == ERROR_SERVICE_DISABLED, "%d != ERROR_SERVICE_DISABLED\n", le); + ok(le == ERROR_SERVICE_DISABLED, "%d != ERROR_SERVICE_DISABLED\n", le);
/* Then one with a bad path */ displayname = "Winetest Bad Path"; diff --git a/programs/services/rpc.c b/programs/services/rpc.c index fe33ce1..573b748 100644 --- a/programs/services/rpc.c +++ b/programs/services/rpc.c @@ -961,6 +961,9 @@ DWORD __cdecl svcctl_StartServiceW( if ((err = validate_service_handle(hService, SERVICE_START, &service)) != 0) return err;
+ if (service->service_entry->config.dwStartType == SERVICE_DISABLED) + return ERROR_SERVICE_DISABLED; + err = service_start(service->service_entry, dwNumServiceArgs, lpServiceArgVectors);
return err;