diff options
author | Simon Rettberg | 2022-01-20 13:33:11 +0100 |
---|---|---|
committer | Simon Rettberg | 2022-01-20 13:33:11 +0100 |
commit | 3d748ebe7d900e96670ff3d455896998dfba6191 (patch) | |
tree | e8bbaf6531897a2292da2158a46e9dce3df96baf /driver/screens.c | |
parent | Re-sync dpms settings on unblank (diff) | |
download | xscreensaver-29r1.tar.gz xscreensaver-29r1.tar.xz xscreensaver-29r1.zip |
Diffstat (limited to 'driver/screens.c')
-rw-r--r-- | driver/screens.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/driver/screens.c b/driver/screens.c index f319c96..5aeb55d 100644 --- a/driver/screens.c +++ b/driver/screens.c @@ -1,5 +1,5 @@ /* screens.c --- dealing with RANDR, Xinerama, and VidMode Viewports. - * xscreensaver, Copyright (c) 1991-2008 Jamie Zawinski <jwz@jwz.org> + * xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski <jwz@jwz.org> * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -1089,6 +1089,22 @@ update_screen_layout (saver_info *si) j++; } + for (; j < count; j++) + { + saver_screen_info *ssi = &si->screens[j]; + if (!ssi->screensaver_window) + continue; + fprintf (stderr, "%s: %d: screen now unused, disabling.\n", + blurb(), j); + /* Undo store_saver_id() so that xscreensaver-command doesn't attempt + to communicate with us through this window. It might make more + sense to destroy the window, but I'm not 100% sure that there are + no outstanding grabs on it that have yet been transferred. + */ + XDeleteProperty (si->dpy, ssi->screensaver_window, + XA_SCREENSAVER_VERSION); + } + si->default_screen = &si->screens[0]; return True; } |