summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Cristau <jcristau@debian.org>2010-02-12 23:34:57 +0100
committerKeith Packard <keithp@keithp.com>2010-02-12 14:57:11 -0800
commit001ce71dc11287dc94cc2fbc5d35677c046e6c04 (patch)
treef580dd53b104c0cef76ee27144695f429f486d85
parent97b03037f4d99fcebc7603011f41c3aff9871ce2 (diff)
dix: restore lastDeviceEventTime update in dixSaveScreens
This was removed in 6b5978dcf1f7ac3ecc2f22df06f7000f360e2066 (Do not reset lastDeviceEventTime when we do dixSaveScreens), but caused a regression for XResetScreenSaver. Add the lastDeviceEventTime update back, but restrict it to that case. X.Org bug#25855 <http://bugs.freedesktop.org/25855> Reported-by: Lubos Lunak <l.lunak@suse.cz> Tested-by: Lubos Lunak <l.lunak@suse.cz> Signed-off-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--dix/window.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/dix/window.c b/dix/window.c
index caff1cbff..2676a546a 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -3233,8 +3233,13 @@ dixSaveScreens(ClientPtr client, int on, int mode)
}
}
screenIsSaved = what;
- if (mode == ScreenSaverReset)
- SetScreenSaverTimer();
+ if (mode == ScreenSaverReset) {
+ if (on == SCREEN_SAVER_FORCER) {
+ UpdateCurrentTimeIf();
+ lastDeviceEventTime = currentTime;
+ }
+ SetScreenSaverTimer();
+ }
return Success;
}