xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Nov 13 16:05:21 UTC 2018


 dix/window.c |   14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

New commits:
commit fbdd4d679a7d020f78f7b877033b83e00f5a0f73
Author: Michal Srb <msrb at suse.com>
Date:   Mon Nov 12 13:51:48 2018 +0100

    dix/window: Use ConfigureWindow instead of MoveWindow
    
    The screensaver can regularly move its window to random offsets. It should
    use the ConfigureWindow function instead of calling the Screen's MoveWindow
    directly. Some MoveWindow implementations, such as compMoveWindow, rely on
    Screen's ConfigNotify being called first as it happens in ConfigureWindow.
    
    Reviewed-by: Adam Jackson <ajax at redhat.com>

diff --git a/dix/window.c b/dix/window.c
index 2b599e788..f4ace76c7 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -3094,6 +3094,7 @@ int
 dixSaveScreens(ClientPtr client, int on, int mode)
 {
     int rc, i, what, type;
+    XID vlist[2];
 
     if (on == SCREEN_SAVER_FORCER) {
         if (mode == ScreenSaverReset)
@@ -3146,14 +3147,11 @@ dixSaveScreens(ClientPtr client, int on, int mode)
                  * for the root window, so PaintWindow works
                  */
                 screenIsSaved = SCREEN_SAVER_OFF;
-                (*pWin->drawable.pScreen->MoveWindow) (pWin,
-                                                       (short) (-
-                                                                (rand() %
-                                                                 RANDOM_WIDTH)),
-                                                       (short) (-
-                                                                (rand() %
-                                                                 RANDOM_WIDTH)),
-                                                       pWin->nextSib, VTMove);
+
+                vlist[0] = -(rand() % RANDOM_WIDTH);
+                vlist[1] = -(rand() % RANDOM_WIDTH);
+                ConfigureWindow(pWin, CWX | CWY, vlist, client);
+
                 screenIsSaved = SCREEN_SAVER_ON;
             }
             /*


More information about the xorg-commit mailing list