commit:     abf93bc0441052ca9e3c5782114d13c6b68886fb
Author:     Michael Mair-Keimberger <mmk <AT> levelnine <DOT> at>
AuthorDate: Sat Feb  4 22:38:58 2023 +0000
Commit:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
CommitDate: Mon Feb 20 21:07:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abf93bc0

x11-libs/libX11: remove unused patch

Signed-off-by: Michael Mair-Keimberger <mmk <AT> levelnine.at>
Closes: https://github.com/gentoo/gentoo/pull/29430
Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org>

 .../libX11/files/libX11-1.8.2-reentrancy.patch     | 149 ---------------------
 1 file changed, 149 deletions(-)

diff --git a/x11-libs/libX11/files/libX11-1.8.2-reentrancy.patch 
b/x11-libs/libX11/files/libX11-1.8.2-reentrancy.patch
deleted file mode 100644
index 784adaeb008f..000000000000
--- a/x11-libs/libX11/files/libX11-1.8.2-reentrancy.patch
+++ /dev/null
@@ -1,149 +0,0 @@
-https://gitlab.freedesktop.org/xorg/lib/libx11/-/commit/a9e845809bcaae22496bc8aa3ca252b410d5f39b
-https://bugs.gentoo.org/862115
-
-From a9e845809bcaae22496bc8aa3ca252b410d5f39b Mon Sep 17 00:00:00 2001
-From: Matthieu Herrb <[email protected]>
-Date: Fri, 11 Nov 2022 18:55:23 +0100
-Subject: [PATCH] Fix 797755 Allow X*IfEvent() to reenter libX11
-
-- the activation logic is reversed
-- there is also _XInternalLockDisplay() that needs protection
-- I've found cases (in fvwm2) where the callback calls XCheckIfEvent()
-  recursively. So the flag needs to be a counter.
-
-Reviewed-by: Adam Jackson <[email protected]>
---- a/include/X11/Xlibint.h
-+++ b/include/X11/Xlibint.h
-@@ -207,7 +207,7 @@ struct _XDisplay
- 
-       XIOErrorExitHandler exit_handler;
-       void *exit_handler_data;
--        Bool in_ifevent;
-+        CARD32 in_ifevent;
- };
- 
- #define XAllocIDs(dpy,ids,n) (*(dpy)->idlist_alloc)(dpy,ids,n)
---- a/src/ChkIfEv.c
-+++ b/src/ChkIfEv.c
-@@ -49,8 +49,8 @@ Bool XCheckIfEvent (
-       unsigned long qe_serial = 0;
-       int n;                  /* time through count */
- 
-+        dpy->in_ifevent++;
-         LockDisplay(dpy);
--        dpy->in_ifevent = True;
-       prev = NULL;
-       for (n = 3; --n >= 0;) {
-           for (qelt = prev ? prev->next : dpy->head;
-@@ -80,7 +80,7 @@ Bool XCheckIfEvent (
-               /* another thread has snatched this event */
-               prev = NULL;
-       }
--        dpy->in_ifevent = False;
-+        dpy->in_ifevent--;
-       UnlockDisplay(dpy);
-       return False;
- }
---- a/src/IfEvent.c
-+++ b/src/IfEvent.c
-@@ -48,8 +48,8 @@ XIfEvent (
-       register _XQEvent *qelt, *prev;
-       unsigned long qe_serial = 0;
- 
-+        dpy->in_ifevent++;
-         LockDisplay(dpy);
--        dpy->in_ifevent = True;
-       prev = NULL;
-       while (1) {
-           for (qelt = prev ? prev->next : dpy->head;
-@@ -60,7 +60,7 @@ XIfEvent (
-                   *event = qelt->event;
-                   _XDeq(dpy, prev, qelt);
-                   _XStoreEventCookie(dpy, event);
--                    dpy->in_ifevent = False;
-+                    dpy->in_ifevent--;
-                   UnlockDisplay(dpy);
-                   return 0;
-               }
---- a/src/OpenDis.c
-+++ b/src/OpenDis.c
-@@ -189,7 +189,7 @@ XOpenDisplay (
-       dpy->xcmisc_opcode      = 0;
-       dpy->xkb_info           = NULL;
-       dpy->exit_handler_data  = NULL;
--        dpy->in_ifevent         = False;
-+        dpy->in_ifevent         = 0;
- 
- /*
-  * Setup other information in this display structure.
---- a/src/PeekIfEv.c
-+++ b/src/PeekIfEv.c
-@@ -49,8 +49,8 @@ XPeekIfEvent (
-       register _XQEvent *prev, *qelt;
-       unsigned long qe_serial = 0;
- 
-+        dpy->in_ifevent++;
-       LockDisplay(dpy);
--        dpy->in_ifevent = True;
-       prev = NULL;
-       while (1) {
-           for (qelt = prev ? prev->next : dpy->head;
-@@ -64,7 +64,7 @@ XPeekIfEvent (
-                       _XStoreEventCookie(dpy, &copy);
-                       *event = copy;
-                   }
--                    dpy->in_ifevent = False;
-+                    dpy->in_ifevent--;
-                   UnlockDisplay(dpy);
-                   return 0;
-               }
---- a/src/locking.c
-+++ b/src/locking.c
-@@ -465,17 +465,33 @@ static void _XIfEventLockDisplay(
-     /* assert(dpy->in_ifevent); */
- }
- 
-+static void _XInternalLockDisplay(
-+    Display *dpy,
-+    Bool wskip
-+    XTHREADS_FILE_LINE_ARGS
-+    );
-+
-+static void _XIfEventInternalLockDisplay(
-+    Display *dpy,
-+    Bool wskip
-+    XTHREADS_FILE_LINE_ARGS
-+    )
-+{
-+    /* assert(dpy->in_ifevent); */
-+}
-+
- static void _XIfEventUnlockDisplay(
-     Display *dpy
-     XTHREADS_FILE_LINE_ARGS
-     )
- {
--    if (dpy->in_ifevent)
-+    if (dpy->in_ifevent == 0) {
-+        dpy->lock_fns->lock_display = _XLockDisplay;
-+        dpy->lock_fns->unlock_display = _XUnlockDisplay;
-+        dpy->lock->internal_lock_display = _XInternalLockDisplay;
-+        UnlockDisplay(dpy);
-+    } else
-         return;
--
--    dpy->lock_fns->lock_display = _XLockDisplay;
--    dpy->lock_fns->unlock_display = _XUnlockDisplay;
--    UnlockDisplay(dpy);
- }
- 
- static void _XLockDisplay(
-@@ -507,6 +523,7 @@ static void _XLockDisplay(
-     if (dpy->in_ifevent) {
-         dpy->lock_fns->lock_display = _XIfEventLockDisplay;
-         dpy->lock_fns->unlock_display = _XIfEventUnlockDisplay;
-+        dpy->lock->internal_lock_display = _XIfEventInternalLockDisplay;
-     }
- }
- 
-GitLab

Reply via email to