diff --git a/U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch b/U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch new file mode 100644 index 0000000..5d81325 --- /dev/null +++ b/U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch @@ -0,0 +1,51 @@ +Git-commit: fbdd4d679a7d020f78f7b877033b83e00f5a0f73 +Patch-Mainline: Upstream +Author: Michal Srb +Subject: dix/window: Use ConfigureWindow instead of MoveWindow +References: bsc#1114822 + +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 +--- + dix/window.c | 14 ++++++-------- + 1 file changed, 6 insertions(+), 8 deletions(-) + +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; + } + /* +-- +2.16.4 + diff --git a/xorg-x11-server.changes b/xorg-x11-server.changes index 2ba52bc..9bd80fd 100644 --- a/xorg-x11-server.changes +++ b/xorg-x11-server.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Thu Nov 22 10:47:07 UTC 2018 - sndirsch@suse.com + +- xorg-server 1.20.3 (see changelog below) superseded the + following patch we used in sle15 before (bsc#1112020, CVE-2018-14665): + - U_Disable-logfile-and-modulepath-when-running-with-ele.patch + +------------------------------------------------------------------- +Wed Nov 14 13:45:37 UTC 2018 - msrb@suse.com + +- U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch + * Fix abort triggered by some uses of screensaver. (bsc#1114822) + ------------------------------------------------------------------- Mon Oct 29 15:35:59 UTC 2018 - sndirsch@suse.com @@ -119,6 +132,7 @@ Sat May 12 15:03:54 UTC 2018 - tobias.johannes.klausmann@mni.thm.de + U_0003-animcur-Run-the-timer-from-the-device-not-the-screen.patch + U_0004-animcur-Fix-transitions-between-animated-cursors.patch + U_xfree86-Remove-broken-RANDR-disabling-logic-v4.patch + + U_glx-Do-not-call-into-Composite-if-it-is-disabled.patch - Adapt patches to work with the new release: + N_zap_warning_xserver.diff + N_fix_fglrx_screendepth_issue.patch diff --git a/xorg-x11-server.spec b/xorg-x11-server.spec index 2560557..178c7bf 100644 --- a/xorg-x11-server.spec +++ b/xorg-x11-server.spec @@ -226,6 +226,8 @@ Patch1401: u_randr-Do-not-crash-if-slave-screen-does-not-have-pro.patch Patch1501: U_xkb-Fix-heap-overflow-caused-by-optimized-away-min.patch +Patch1502: U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch + %description This package contains the X.Org Server. @@ -367,6 +369,8 @@ sh %{SOURCE92} --verify . %{SOURCE91} %patch1501 -p1 +%patch1502 -p1 + %build test -e source-file-list || \ find -L . -type f \! -name '*.orig' \! -path ./source-file-list > \