diff options
author | Michael Mair-Keimberger <mmk@levelnine.at> | 2023-02-04 23:38:58 +0100 |
---|---|---|
committer | Alfredo Tupone <tupone@gentoo.org> | 2023-02-20 22:07:35 +0100 |
commit | abf93bc0441052ca9e3c5782114d13c6b68886fb (patch) | |
tree | d8123d6b1b10fa06e0e1d46e6b943456faf4c943 /x11-libs/libX11 | |
parent | app-forensics/chkrootkit: add 0.57 (diff) | |
download | gentoo-abf93bc0441052ca9e3c5782114d13c6b68886fb.tar.gz gentoo-abf93bc0441052ca9e3c5782114d13c6b68886fb.tar.bz2 gentoo-abf93bc0441052ca9e3c5782114d13c6b68886fb.zip |
x11-libs/libX11: remove unused patch
Signed-off-by: Michael Mair-Keimberger <mmk@levelnine.at>
Closes: https://github.com/gentoo/gentoo/pull/29430
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
Diffstat (limited to 'x11-libs/libX11')
-rw-r--r-- | x11-libs/libX11/files/libX11-1.8.2-reentrancy.patch | 149 |
1 files changed, 0 insertions, 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 <matthieu@herrb.eu> -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 <ajax@redhat.com> ---- 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, ©); - *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 |