diff --git a/ChangeLog b/ChangeLog index 10e691eb9..619be8834 100644 --- a/ChangeLog +++ b/ChangeLog @@ -12,7 +12,7 @@ Enhancements: - #7282 Improve error handling for thread jobs - #7284 Change session ID info log message to DEBUG2 -Build/CI: +Tasks: - #7283 Update all workflows and fix broken macOS workflows - #7313 Fix CodeQL workflow: Failed to perl 404 Not Found @@ -24,6 +24,7 @@ Build/CI: - #7322 Use C++20 and add Windows CMake preset - #7323 Add Linux and macOS CMake presets - #7325 Add timeout to all GitHub workflows +- #7326 Restore lpDesktop assignment in Windows daemon # 1.14.6 diff --git a/src/lib/platform/MSWindowsWatchdog.cpp b/src/lib/platform/MSWindowsWatchdog.cpp index de1151eb0..b4a0e10ce 100644 --- a/src/lib/platform/MSWindowsWatchdog.cpp +++ b/src/lib/platform/MSWindowsWatchdog.cpp @@ -40,6 +40,9 @@ #define CURRENT_PROCESS_ID 0 #define MAXIMUM_WAIT_TIME 3 +// TODO: maybe this should be \winlogon if we have logonui.exe? +static char g_desktopName[] = "winsta0\\Default"; + namespace { std::string trimDesktopName(const std::string& nameFromTraces) @@ -398,12 +401,9 @@ MSWindowsWatchdog::startProcess() void MSWindowsWatchdog::setStartupInfo(STARTUPINFO& si) { - // TODO: maybe this should be \winlogon if we have logonui.exe? - char desktop[] = "winsta0\\Default"; - ZeroMemory(&si, sizeof(STARTUPINFO)); si.cb = sizeof(STARTUPINFO); - si.lpDesktop = desktop; + si.lpDesktop = g_desktopName; si.hStdError = m_stdOutWrite; si.hStdOutput = m_stdOutWrite; si.dwFlags |= STARTF_USESTDHANDLES;