From 9db24e33c7d3609bade7a37a55af79cb4a83a9b2 Mon Sep 17 00:00:00 2001 From: Doug Lyons Date: Wed, 5 Jan 2022 19:10:56 -0600 Subject: [PATCH] [WINLOGON] Start screen saver as current user (#4135) This fixes displaying user-defined text for 3D Text ScreenSaver. Also set the process to IDLE_PRIORITY_CLASS. CORE-17875 --- base/system/winlogon/screensaver.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/base/system/winlogon/screensaver.c b/base/system/winlogon/screensaver.c index 6bd681ca39e..6f37bf57362 100644 --- a/base/system/winlogon/screensaver.c +++ b/base/system/winlogon/screensaver.c @@ -332,16 +332,17 @@ StartScreenSaver( /* FIXME: Run the screen saver on the secure screen saver desktop if required */ StartupInfo.lpDesktop = L"WinSta0\\Default"; - ret = CreateProcessW(szApplicationName, - szCommandLine, - NULL, - NULL, - FALSE, - 0, - NULL, - NULL, - &StartupInfo, - &ProcessInformation); + ret = CreateProcessAsUserW(Session->UserToken, + szApplicationName, + szCommandLine, + NULL, + NULL, + FALSE, + IDLE_PRIORITY_CLASS, + NULL, + NULL, + &StartupInfo, + &ProcessInformation); if (!ret) { ERR("WL: Unable to start %S, error %lu\n", szApplicationName, GetLastError());