diff options
| author | Liam Mitchell <[email protected]> | 2025-03-25 18:02:11 -0700 |
|---|---|---|
| committer | Liam Mitchell <[email protected]> | 2025-03-25 18:02:11 -0700 |
| commit | 6362d82d2476d740968665e0b4f10750236d201e (patch) | |
| tree | e7e281e84c55828d8746ab4aabdc92bdd976cf99 /src/zenutil/service.cpp | |
| parent | Specify restart options for service manager, to avoid use of manual restart l... (diff) | |
| download | zen-6362d82d2476d740968665e0b4f10750236d201e.tar.xz zen-6362d82d2476d740968665e0b4f10750236d201e.zip | |
Avoid leaking service handle in Windows service installation
Diffstat (limited to 'src/zenutil/service.cpp')
| -rw-r--r-- | src/zenutil/service.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/zenutil/service.cpp b/src/zenutil/service.cpp index e1c5e17fa..760e52baf 100644 --- a/src/zenutil/service.cpp +++ b/src/zenutil/service.cpp @@ -436,6 +436,8 @@ InstallService(std::string_view ServiceName, const ServiceSpec& Spec) return MakeErrorCodeFromLastError(); } + auto _ = MakeGuard([schService]() { CloseServiceHandle(schService); }); + if (!Spec.Description.empty()) { ExtendableWideStringBuilder<128> DescriptionBuilder; @@ -468,8 +470,6 @@ InstallService(std::string_view ServiceName, const ServiceSpec& Spec) return MakeErrorCodeFromLastError(); } - CloseServiceHandle(schService); - return {}; } |