X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=driver%2Fxscreensaver.c;h=d820d0aba2549c07912b3f14848ebdf4a19ea176;hb=6bb727f03bff0389fbb1349d7df4c9d8d7532959;hp=24e40f282101762a81c447a59a9f5b645f69dacc;hpb=5b7bc6e70fb439cf4c4bf771ae9f94077fe4fe08;p=xscreensaver diff --git a/driver/xscreensaver.c b/driver/xscreensaver.c index 24e40f28..d820d0ab 100644 --- a/driver/xscreensaver.c +++ b/driver/xscreensaver.c @@ -1,4 +1,4 @@ -/* xscreensaver, Copyright (c) 1991-1997 Jamie Zawinski +/* xscreensaver, Copyright (c) 1991-1998 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -193,7 +193,7 @@ static void do_help (saver_info *si) { printf ("\ -xscreensaver %s, copyright (c) 1991-1997 by Jamie Zawinski \n\ +xscreensaver %s, copyright (c) 1991-1998 by Jamie Zawinski \n\ The standard Xt command-line options are accepted; other options include:\n\ \n\ -timeout When the screensaver should activate.\n\ @@ -663,7 +663,7 @@ initialize (saver_info *si, int argc, char **argv) if (p->verbose_p) printf ("\ -%s %s, copyright (c) 1991-1997 by Jamie Zawinski \n\ +%s %s, copyright (c) 1991-1998 by Jamie Zawinski \n\ pid = %d.\n", progname, si->version, (int) getpid ()); @@ -820,7 +820,7 @@ main_loop (saver_info *si) if (si->demo_mode_p) demo_mode (si); else -#endif +#endif /* !NO_DEMO_MODE */ { if (p->verbose_p) printf ("%s: user is idle; waking up at %s.\n", progname, @@ -839,7 +839,7 @@ main_loop (saver_info *si) si->lock_id = XtAppAddTimeOut (si->app, p->lock_timeout, activate_lock_timer, (XtPointer) si); -#endif +#endif /* !NO_LOCKING */ PASSWD_INVALID: @@ -889,21 +889,27 @@ main_loop (saver_info *si) goto PASSWD_INVALID; si->locked_p = False; } -#endif - unblank_screen (si); +#endif /* !NO_LOCKING */ + + /* Let's kill it before unblanking, to get it to stop drawing as + soon as possible... */ kill_screenhack (si); + unblank_screen (si); + if (si->cycle_id) { XtRemoveTimeOut (si->cycle_id); si->cycle_id = 0; } + #ifndef NO_LOCKING if (si->lock_id) { XtRemoveTimeOut (si->lock_id); si->lock_id = 0; } -#endif +#endif /* !NO_LOCKING */ + if (p->verbose_p) printf ("%s: user is active; going to sleep at %s.\n", progname, timestring ());