Core: Fixup AutoUpdateChecker::TriggerUpdate on Windows:
- Properly close handles if Updater.exe process spawns successfully - Fix STARTUPINFO sizeof typo
This commit is contained in:
parent
a00dfeecf0
commit
4b03790eda
|
@ -234,12 +234,16 @@ void AutoUpdateChecker::TriggerUpdate(const AutoUpdateChecker::NewVersionInforma
|
||||||
INFO_LOG(COMMON, "Updater command line: %s", command_line.c_str());
|
INFO_LOG(COMMON, "Updater command line: %s", command_line.c_str());
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
STARTUPINFO sinfo = {sizeof(info)};
|
STARTUPINFO sinfo = {sizeof(sinfo)};
|
||||||
sinfo.dwFlags = STARTF_FORCEOFFFEEDBACK; // No hourglass cursor after starting the process.
|
sinfo.dwFlags = STARTF_FORCEOFFFEEDBACK; // No hourglass cursor after starting the process.
|
||||||
PROCESS_INFORMATION pinfo;
|
PROCESS_INFORMATION pinfo;
|
||||||
if (!CreateProcessW(UTF8ToUTF16(reloc_updater_path).c_str(),
|
if (CreateProcessW(UTF8ToUTF16(reloc_updater_path).c_str(), UTF8ToUTF16(command_line).data(),
|
||||||
const_cast<wchar_t*>(UTF8ToUTF16(command_line).c_str()), nullptr, nullptr,
|
nullptr, nullptr, FALSE, 0, nullptr, nullptr, &sinfo, &pinfo))
|
||||||
FALSE, 0, nullptr, nullptr, &sinfo, &pinfo))
|
{
|
||||||
|
CloseHandle(pinfo.hThread);
|
||||||
|
CloseHandle(pinfo.hProcess);
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
ERROR_LOG(COMMON, "Could not start updater process: error=%d", GetLastError());
|
ERROR_LOG(COMMON, "Could not start updater process: error=%d", GetLastError());
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue