Module Name:    xsrc
Committed By:   martin
Date:           Sat Apr  1 15:34:12 UTC 2023

Modified Files:
        xsrc/external/mit/xorg-server.old/dist/composite [netbsd-9]:
            compwindow.c
        xsrc/external/mit/xorg-server/dist/composite [netbsd-9]: compwindow.c

Log Message:
Pull up the following, requested by mrg in ticket #1619:

        xsrc/external/mit/xorg-server/dist/composite/compwindow.c up to 1.1.1.9 
(patch)
        xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c   1.2 
(patch)

Fix ZDI-CAN-19866 and CVE-2023-1393, a use-after-free problem.


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1 -r1.1.1.1.4.1 \
    xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c
cvs rdiff -u -r1.1.1.7 -r1.1.1.7.2.1 \
    xsrc/external/mit/xorg-server/dist/composite/compwindow.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c
diff -u xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c:1.1.1.1 xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c:1.1.1.1.4.1
--- xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c:1.1.1.1	Thu Jun  9 09:07:56 2016
+++ xsrc/external/mit/xorg-server.old/dist/composite/compwindow.c	Sat Apr  1 15:34:11 2023
@@ -588,6 +588,11 @@ compDestroyWindow (WindowPtr pWin)
     ret = (*pScreen->DestroyWindow) (pWin);
     cs->DestroyWindow = pScreen->DestroyWindow;
     pScreen->DestroyWindow = compDestroyWindow;
+
+    /* Did we just destroy the overlay window? */
+    if (pWin == cs->pOverlayWin)
+        cs->pOverlayWin = NULL;
+
 /*    compCheckTree (pWin->drawable.pScreen); can't check -- tree isn't good*/
     return ret;
 }

Index: xsrc/external/mit/xorg-server/dist/composite/compwindow.c
diff -u xsrc/external/mit/xorg-server/dist/composite/compwindow.c:1.1.1.7 xsrc/external/mit/xorg-server/dist/composite/compwindow.c:1.1.1.7.2.1
--- xsrc/external/mit/xorg-server/dist/composite/compwindow.c:1.1.1.7	Mon Dec 31 09:36:07 2018
+++ xsrc/external/mit/xorg-server/dist/composite/compwindow.c	Sat Apr  1 15:34:11 2023
@@ -613,6 +613,11 @@ compDestroyWindow(WindowPtr pWin)
     ret = (*pScreen->DestroyWindow) (pWin);
     cs->DestroyWindow = pScreen->DestroyWindow;
     pScreen->DestroyWindow = compDestroyWindow;
+
+    /* Did we just destroy the overlay window? */
+    if (pWin == cs->pOverlayWin)
+        cs->pOverlayWin = NULL;
+
 /*    compCheckTree (pWin->drawable.pScreen); can't check -- tree isn't good*/
     return ret;
 }

Reply via email to