From d09a5ff14a172a930dd5a5464cbc74ca2c740f51 Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sat, 23 Feb 2013 19:48:22 +0000 Subject: [PATCH] [WINLOGON] - Call DispatchSAS when the screen saver is started by a WM_LOGONNOTIFY message. - Lock the workstation after the screen saver was terminated. svn path=/trunk/; revision=58359 --- reactos/base/system/winlogon/sas.c | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-) diff --git a/reactos/base/system/winlogon/sas.c b/reactos/base/system/winlogon/sas.c index 7e71ed1691e..da72988248a 100644 --- a/reactos/base/system/winlogon/sas.c +++ b/reactos/base/system/winlogon/sas.c @@ -23,8 +23,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(winlogon); #define HK_CTRL_ALT_DEL 0 #define HK_CTRL_SHIFT_ESC 1 -static BOOL inScrn = FALSE; - /* FUNCTIONS ****************************************************************/ static BOOL @@ -940,9 +938,9 @@ DispatchSAS( } else { + StartScreenSaver(Session); if (bSecure) DoGenericAction(Session, WLX_SAS_ACTION_LOCK_WKSTA); - StartScreenSaver(Session); } } else if (dwSasType == WLX_SAS_TYPE_SCRNSVR_ACTIVITY) @@ -1154,24 +1152,7 @@ SASWindowProc( } case LN_START_SCREENSAVE: { - BOOL bSecure = FALSE; - - if (inScrn) - break; - - inScrn = TRUE; - - // lParam 1 == Secure - if (lParam) - { - if (Session->Gina.Functions.WlxScreenSaverNotify(Session->Gina.Context, &bSecure)) - { - if (bSecure) DoGenericAction(Session, WLX_SAS_ACTION_LOCK_WKSTA); - } - } - - StartScreenSaver(Session); - inScrn = FALSE; + DispatchSAS(Session, WLX_SAS_TYPE_SCRNSVR_TIMEOUT); break; } case LN_LOCK_WORKSTATION: