diff --git a/src/os/win32/win32_sigar.c b/src/os/win32/win32_sigar.c index aa46c256..44759e49 100644 --- a/src/os/win32/win32_sigar.c +++ b/src/os/win32/win32_sigar.c @@ -1317,6 +1317,7 @@ static int sigar_proc_modules_get_toolhelp(sigar_t *sigar, module.dwSize = sizeof(MODULEENTRY32); if (!module_first(snap_shot, &module)) { + CloseHandle(snap_shot); return SIGAR_OK; } @@ -1334,6 +1335,7 @@ static int sigar_proc_modules_get_toolhelp(sigar_t *sigar, module.dwSize = sizeof(MODULEENTRY32); } while (module_next(snap_shot, &module)); + CloseHandle(snap_shot); FreeLibrary(k32_handle); return SIGAR_OK;