https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9db24e33c7d3609bade7a3...
commit 9db24e33c7d3609bade7a37a55af79cb4a83a9b2 Author: Doug Lyons douglyons@douglyons.com AuthorDate: Wed Jan 5 19:10:56 2022 -0600 Commit: GitHub noreply@github.com CommitDate: Thu Jan 6 04:10:56 2022 +0300
[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());