* [gentoo-commits] repo/gentoo:master commit in: x11-libs/libX11/files/
@ 2023-02-20 21:08 Alfredo Tupone
0 siblings, 0 replies; only message in thread
From: Alfredo Tupone @ 2023-02-20 21:08 UTC (permalink / raw
To: gentoo-commits
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 <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
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2023-02-20 21:08 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-20 21:08 [gentoo-commits] repo/gentoo:master commit in: x11-libs/libX11/files/ Alfredo Tupone
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox