summaryrefslogtreecommitdiff
path: root/x11-libs/libX11
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-21 02:22:31 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-21 02:22:31 +0000
commit3b32ae7547d742f6e65770361188670710bec186 (patch)
tree51b5a45e8291644df70197de17f086e1640e9c7e /x11-libs/libX11
parentdd03974882f85ca04e35cfbc97f7ff756f5d5c20 (diff)
gentoo auto-resync : 21:02:2023 - 02:22:31
Diffstat (limited to 'x11-libs/libX11')
-rw-r--r--x11-libs/libX11/Manifest1
-rw-r--r--x11-libs/libX11/files/libX11-1.8.2-reentrancy.patch149
2 files changed, 0 insertions, 150 deletions
diff --git a/x11-libs/libX11/Manifest b/x11-libs/libX11/Manifest
index a83719691655..61a6ec158849 100644
--- a/x11-libs/libX11/Manifest
+++ b/x11-libs/libX11/Manifest
@@ -1,4 +1,3 @@
-AUX libX11-1.8.2-reentrancy.patch 4077 BLAKE2B 6888f6185a03c9c5fbe79a3ce6d2b2a78ee951038a7c5cdbcd94e72a6c24d7aca3289c724b0c940a245cd352e3f50bf064fef5c00c02321e7cb67b94a39cd13d SHA512 6d8e9f578e33cb36236757127634899f71c7c194d536fd5ba7617f96fc38928f5d402aa9adb57a2939cd6dad041ba0431a2281aaec7e5b25395b67355a10bbce
AUX libX11-1.8.3-reentrancy-again.patch 4713 BLAKE2B e2d308bd011120655009e5af1e5cbbefa217c3de1c7e78d3ddc64d0ce02535cc63903696ec21cb5743b49ee016a3c8ded22ee62a2f1256b71c0f245c51108de5 SHA512 a6a2f504fe7b860a86ac140c2b1ad7ca3c4a8fc2170535a5cac365bf8de40fa576f0d05134b1eb316192b4acb909bba473298704b18c7c1e1602e2a4f56e592f
AUX libX11-1.8.3-revert-XPutBackEvent.patch 1772 BLAKE2B b60d6cb535d6557fb2ba84a962af77481c6ebd1780d23869172cb331a09f7638fee75deeb73b02a5c37f658f5d04d2b90a6f5c9d91121c187f9d98a311c3c718 SHA512 df965ba65ca448686e200feaee11f8f9fb90b27fd2def30aee930d21b03682ed83613d3630b024fe6d1fd2894e76fa35ff8d04afc6e958981ed9b3e8f51e834c
DIST libX11-1.7.5.tar.xz 1853152 BLAKE2B 95ceccbfd37d8a749a533bdc03feba94236a47185a2cd7ad6592c534c17636906b735aa5800d810d13d3e342e3dbe281bb1f1f3ecab9d07e6a6a50f33beef8af SHA512 ef33e2f631226cab27657f46e1fd4cfc928f62f928d8297474e7b993017c8f92b60272eed6515990cdf3a9d34581837b7a3896e584f3546dd26f3790034df347
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, &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