advapi32: Fix set process request, a pipe instance can only handle one request.
diff --git a/dlls/advapi32/service.c b/dlls/advapi32/service.c index 22489a9..587b9ae 100644 --- a/dlls/advapi32/service.c +++ b/dlls/advapi32/service.c
@@ -1590,8 +1590,14 @@ if (handle != INVALID_HANDLE_VALUE) { - if (service_send_start_message(handle, lpServiceArgVectors, dwNumServiceArgs)) - r = service_set_processID(handle, dwProcessId, &dwResult); + r = service_send_start_message(handle, lpServiceArgVectors, dwNumServiceArgs); + CloseHandle(handle); + } + + handle = service_open_pipe(hsvc->name); + if (handle != INVALID_HANDLE_VALUE) + { + service_set_processID(handle, dwProcessId, &dwResult); CloseHandle(handle); }