From f431cc3871ee647b561f5857d6aa34cd3b3ffafe Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 5 Nov 2020 11:12:57 +1000 Subject: [PATCH 01/39] Add BuildRequires for make --- libX11.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index a3e77c3..8f6d50f 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.6.12 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -19,6 +19,7 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch +BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 BuildRequires: pkgconfig(xproto) >= 7.0.15 BuildRequires: xorg-x11-xtrans-devel >= 1.0.3-4 @@ -121,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Nov 5 11:12:56 AEST 2020 Peter Hutterer - 1.6.12-2 +- Add BuildRequires for make + * Wed Aug 26 2020 Peter Hutterer 1.6.12-1 - libX11 1.6.12 (CVE-2020-14363, CVE 2020-14344) From 6ab8593d2f32a6e4abb2d89cfaecc2500a28711e Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 9 Nov 2020 12:37:54 +1000 Subject: [PATCH 02/39] Fix a race-condition in poll_for_response (#1758384) --- libX11-race-condition.patch | 109 ++++++++++++++++++++++++++++++++++++ libX11.spec | 8 ++- 2 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 libX11-race-condition.patch diff --git a/libX11-race-condition.patch b/libX11-race-condition.patch new file mode 100644 index 0000000..c01c3a0 --- /dev/null +++ b/libX11-race-condition.patch @@ -0,0 +1,109 @@ +diff --git a/src/Xxcbint.h b/src/Xxcbint.h +index 4ef13d2f..d8293259 100644 +--- a/src/Xxcbint.h ++++ b/src/Xxcbint.h +@@ -27,6 +27,7 @@ typedef struct _X11XCBPrivate { + PendingRequest *pending_requests; + PendingRequest *pending_requests_tail; + xcb_generic_event_t *next_event; ++ void *next_response; + char *real_bufmax; + char *reply_data; + int reply_length; +diff --git a/src/xcb_io.c b/src/xcb_io.c +index 0bd1fdf9..4be75408 100644 +--- a/src/xcb_io.c ++++ b/src/xcb_io.c +@@ -282,22 +282,83 @@ static xcb_generic_reply_t *poll_for_event(Display *dpy, Bool queued_only) + static xcb_generic_reply_t *poll_for_response(Display *dpy) + { + void *response; +- xcb_generic_error_t *error; ++ xcb_generic_reply_t *event; + PendingRequest *req; +- while(!(response = poll_for_event(dpy, False)) && +- (req = dpy->xcb->pending_requests) && +- !req->reply_waiter) ++ ++ while(1) + { ++ xcb_generic_error_t *error = NULL; + uint64_t request; ++ Bool poll_queued_only = dpy->xcb->next_response != NULL; + +- if(!xcb_poll_for_reply64(dpy->xcb->connection, req->sequence, +- &response, &error)) { +- /* xcb_poll_for_reply64 may have read events even if +- * there is no reply. */ +- response = poll_for_event(dpy, True); ++ /* Step 1: is there an event in our queue before the next ++ * reply/error? Return that first. ++ * ++ * If we don't have a reply/error saved from an earlier ++ * invocation we check incoming events too, otherwise only ++ * the ones already queued. ++ */ ++ response = poll_for_event(dpy, poll_queued_only); ++ if(response) + break; ++ ++ /* Step 2: ++ * Response is NULL, i.e. we have no events. ++ * If we are not waiting for a reply or some other thread ++ * had dibs on the next reply, exit. ++ */ ++ req = dpy->xcb->pending_requests; ++ if(!req || req->reply_waiter) ++ break; ++ ++ /* Step 3: ++ * We have some response (error or reply) related to req ++ * saved from an earlier invocation of this function. Let's ++ * use that one. ++ */ ++ if(dpy->xcb->next_response) ++ { ++ if (((xcb_generic_reply_t*)dpy->xcb->next_response)->response_type == X_Error) ++ { ++ error = dpy->xcb->next_response; ++ response = NULL; ++ } ++ else ++ { ++ response = dpy->xcb->next_response; ++ error = NULL; ++ } ++ dpy->xcb->next_response = NULL; ++ } ++ else ++ { ++ /* Step 4: pull down the next response from the wire. This ++ * should be the 99% case. ++ * xcb_poll_for_reply64() may also pull down events that ++ * happened before the reply. ++ */ ++ if(!xcb_poll_for_reply64(dpy->xcb->connection, req->sequence, ++ &response, &error)) { ++ /* if there is no reply/error, xcb_poll_for_reply64 ++ * may have read events. Return that. */ ++ response = poll_for_event(dpy, True); ++ break; ++ } ++ ++ /* Step 5: we have a new response, but we may also have some ++ * events that happened before that response. Return those ++ * first and save our reply/error for the next invocation. ++ */ ++ event = poll_for_event(dpy, True); ++ if(event) ++ { ++ dpy->xcb->next_response = error ? error : response; ++ response = event; ++ break; ++ } + } + ++ /* Step 6: actually handle the reply/error now... */ + request = X_DPY_GET_REQUEST(dpy); + if(XLIB_SEQUENCE_COMPARE(req->sequence, >, request)) + { diff --git a/libX11.spec b/libX11.spec index 8f6d50f..67cd044 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.6.12 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -18,6 +18,8 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. %endif Patch2: dont-forward-keycode-0.patch +# diff from https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/53 +Patch3: libX11-race-condition.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -57,6 +59,7 @@ libX11/libxcb interoperability library %prep %setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} %patch2 -p1 -b .dont-forward-keycode-0 +%patch3 -p1 -b .race-condition %build autoreconf -v --install --force @@ -122,6 +125,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Nov 09 2020 Peter Hutterer 1.6.12-3 +- Fix a race-condition in poll_for_response (#1758384) + * Thu Nov 5 11:12:56 AEST 2020 Peter Hutterer - 1.6.12-2 - Add BuildRequires for make From 1183c08e2a3cbfe22a3c3ef2692d3b6011e5d5dc Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 1 Dec 2020 09:06:10 +1000 Subject: [PATCH 03/39] libX11 1.7.0 switch to using the autosetup rpm macro --- libX11-race-condition.patch | 109 ------------------------------------ libX11.spec | 16 +++--- 2 files changed, 8 insertions(+), 117 deletions(-) delete mode 100644 libX11-race-condition.patch diff --git a/libX11-race-condition.patch b/libX11-race-condition.patch deleted file mode 100644 index c01c3a0..0000000 --- a/libX11-race-condition.patch +++ /dev/null @@ -1,109 +0,0 @@ -diff --git a/src/Xxcbint.h b/src/Xxcbint.h -index 4ef13d2f..d8293259 100644 ---- a/src/Xxcbint.h -+++ b/src/Xxcbint.h -@@ -27,6 +27,7 @@ typedef struct _X11XCBPrivate { - PendingRequest *pending_requests; - PendingRequest *pending_requests_tail; - xcb_generic_event_t *next_event; -+ void *next_response; - char *real_bufmax; - char *reply_data; - int reply_length; -diff --git a/src/xcb_io.c b/src/xcb_io.c -index 0bd1fdf9..4be75408 100644 ---- a/src/xcb_io.c -+++ b/src/xcb_io.c -@@ -282,22 +282,83 @@ static xcb_generic_reply_t *poll_for_event(Display *dpy, Bool queued_only) - static xcb_generic_reply_t *poll_for_response(Display *dpy) - { - void *response; -- xcb_generic_error_t *error; -+ xcb_generic_reply_t *event; - PendingRequest *req; -- while(!(response = poll_for_event(dpy, False)) && -- (req = dpy->xcb->pending_requests) && -- !req->reply_waiter) -+ -+ while(1) - { -+ xcb_generic_error_t *error = NULL; - uint64_t request; -+ Bool poll_queued_only = dpy->xcb->next_response != NULL; - -- if(!xcb_poll_for_reply64(dpy->xcb->connection, req->sequence, -- &response, &error)) { -- /* xcb_poll_for_reply64 may have read events even if -- * there is no reply. */ -- response = poll_for_event(dpy, True); -+ /* Step 1: is there an event in our queue before the next -+ * reply/error? Return that first. -+ * -+ * If we don't have a reply/error saved from an earlier -+ * invocation we check incoming events too, otherwise only -+ * the ones already queued. -+ */ -+ response = poll_for_event(dpy, poll_queued_only); -+ if(response) - break; -+ -+ /* Step 2: -+ * Response is NULL, i.e. we have no events. -+ * If we are not waiting for a reply or some other thread -+ * had dibs on the next reply, exit. -+ */ -+ req = dpy->xcb->pending_requests; -+ if(!req || req->reply_waiter) -+ break; -+ -+ /* Step 3: -+ * We have some response (error or reply) related to req -+ * saved from an earlier invocation of this function. Let's -+ * use that one. -+ */ -+ if(dpy->xcb->next_response) -+ { -+ if (((xcb_generic_reply_t*)dpy->xcb->next_response)->response_type == X_Error) -+ { -+ error = dpy->xcb->next_response; -+ response = NULL; -+ } -+ else -+ { -+ response = dpy->xcb->next_response; -+ error = NULL; -+ } -+ dpy->xcb->next_response = NULL; -+ } -+ else -+ { -+ /* Step 4: pull down the next response from the wire. This -+ * should be the 99% case. -+ * xcb_poll_for_reply64() may also pull down events that -+ * happened before the reply. -+ */ -+ if(!xcb_poll_for_reply64(dpy->xcb->connection, req->sequence, -+ &response, &error)) { -+ /* if there is no reply/error, xcb_poll_for_reply64 -+ * may have read events. Return that. */ -+ response = poll_for_event(dpy, True); -+ break; -+ } -+ -+ /* Step 5: we have a new response, but we may also have some -+ * events that happened before that response. Return those -+ * first and save our reply/error for the next invocation. -+ */ -+ event = poll_for_event(dpy, True); -+ if(event) -+ { -+ dpy->xcb->next_response = error ? error : response; -+ response = event; -+ break; -+ } - } - -+ /* Step 6: actually handle the reply/error now... */ - request = X_DPY_GET_REQUEST(dpy); - if(XLIB_SEQUENCE_COMPARE(req->sequence, >, request)) - { diff --git a/libX11.spec b/libX11.spec index 67cd044..6a6fea6 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.6.12 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.7.0 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -18,8 +18,6 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. %endif Patch2: dont-forward-keycode-0.patch -# diff from https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/53 -Patch3: libX11-race-condition.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -57,9 +55,7 @@ Conflicts: %{name} < %{version}-%{release} libX11/libxcb interoperability library %prep -%setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} -%patch2 -p1 -b .dont-forward-keycode-0 -%patch3 -p1 -b .race-condition +%autosetup -p1 -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} %build autoreconf -v --install --force @@ -90,7 +86,7 @@ make %{?_smp_mflags} check %files %{_libdir}/libX11.so.6 -%{_libdir}/libX11.so.6.3.0 +%{_libdir}/libX11.so.6.4.0 %files xcb %{_libdir}/libX11-xcb.so.1 @@ -125,6 +121,10 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue Dec 01 2020 Peter Hutterer 1.7.0-1 +- libX11 1.7.0 +- switch to using the autosetup rpm macro + * Mon Nov 09 2020 Peter Hutterer 1.6.12-3 - Fix a race-condition in poll_for_response (#1758384) From 233ab3808594b02fa65affba22b016ae5c825fd8 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 1 Dec 2020 09:19:21 +1000 Subject: [PATCH 04/39] libX11 1.7.0 (with the tarball this time) --- libX11.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index 6a6fea6..0d3c6d7 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.7.0 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -121,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue Dec 01 2020 Peter Hutterer 1.7.0-2 +- libX11 1.7.0 (with the tarball this time) + * Tue Dec 01 2020 Peter Hutterer 1.7.0-1 - libX11 1.7.0 - switch to using the autosetup rpm macro diff --git a/sources b/sources index 256d310..38bdc18 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.6.12.tar.bz2) = 79df7d61d9009b0dd3b65f67a62189aa0a43799c01026b3d2d534092596a0b67f246af5e398a89eb1ccc61a27335f81be8262b8a39768a76f62d862cd7415a47 +SHA512 (libX11-1.7.0.tar.bz2) = f661ca90350fd8a94f054b00f12f5122cea068ebff706acfd399462236c189a296a2358d17d16166635101cf56cc19303dd407873a159932d093c9f33556f9fb From 7db61fbf892507b8978752b06fb4035e75e84dbb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 16:33:06 +0000 Subject: [PATCH 05/39] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 0d3c6d7..5f51a4f 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.7.0 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -121,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 1.7.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Dec 01 2020 Peter Hutterer 1.7.0-2 - libX11 1.7.0 (with the tarball this time) From 1746a66abee44da9d79bd063043594bceefadf57 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Tue, 18 May 2021 13:28:17 -0400 Subject: [PATCH 06/39] libX11 1.7.1 (CVE-2021-31535) --- libX11.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libX11.spec b/libX11.spec index 5f51a4f..9facd00 100644 --- a/libX11.spec +++ b/libX11.spec @@ -1,11 +1,11 @@ %global tarball libX11 #global gitdate 20130524 -%global gitversion a3bdd2b09 +#global gitversion a3bdd2b09 Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.0 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.7.1 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -121,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue May 18 2021 Adam Jackson - 1.7.1-1 +- libX11 1.7.1 (CVE-2021-31535) + * Tue Jan 26 2021 Fedora Release Engineering - 1.7.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 03eb8a16a85b9d6ff7cf90195465160e3ae970fc Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Wed, 19 May 2021 22:55:57 -0600 Subject: [PATCH 07/39] Upload new tarball and updates sources --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 38bdc18..3da7ae5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.0.tar.bz2) = f661ca90350fd8a94f054b00f12f5122cea068ebff706acfd399462236c189a296a2358d17d16166635101cf56cc19303dd407873a159932d093c9f33556f9fb +SHA512 (libX11-1.7.1.tar.bz2) = a76f0a82fce6f9b50646a7cd7ec5ee046650f225816050226068a7548fa083ef07d146d40faaf44e033c59c17b0fda5ffdee3a127dac3ab56cee02133819aa3d From d70fee2fc00ff2c786f1c9b191e0fe143e7f5003 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 9 Jun 2021 10:11:22 +1000 Subject: [PATCH 08/39] libX11 1.7.2 --- libX11.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index 9facd00..1480a04 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.1 +Version: 1.7.2 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -121,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Wed Jun 09 2021 Peter Hutterer 1.7.2-1 +- libX11 1.7.2 + * Tue May 18 2021 Adam Jackson - 1.7.1-1 - libX11 1.7.1 (CVE-2021-31535) diff --git a/sources b/sources index 3da7ae5..4c61bd7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.1.tar.bz2) = a76f0a82fce6f9b50646a7cd7ec5ee046650f225816050226068a7548fa083ef07d146d40faaf44e033c59c17b0fda5ffdee3a127dac3ab56cee02133819aa3d +SHA512 (libX11-1.7.2.tar.bz2) = d01e5c1848c76218605e5af2d353de6b301a251555b52a38dbe930e6635d5e8a92d1486eb6d328ad5d42a5939e0d16868ffa19a75e5a7863d1a32e0d0727bdc7 From cc47291a267e1e6cff65b9aa50ae7f7b1eb68ece Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 10:50:52 +0000 Subject: [PATCH 09/39] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 1480a04..5717c81 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.7.2 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -121,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 1.7.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Wed Jun 09 2021 Peter Hutterer 1.7.2-1 - libX11 1.7.2 From 3d9ed4febd9d6df4a1fb4a641c5312c69029e042 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 27 Jul 2021 12:00:31 +1000 Subject: [PATCH 10/39] Parse the new _EVDEVK symbols --- ...le-the-new-_EVDEVK-xorgproto-symbols.patch | 43 +++++++++++++++++++ libX11.spec | 6 ++- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch diff --git a/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch b/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch new file mode 100644 index 0000000..55adaae --- /dev/null +++ b/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch @@ -0,0 +1,43 @@ +From e92efc63acd7b377faa9e534f4bf52aaa86be2a9 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer +Date: Tue, 27 Jul 2021 11:46:19 +1000 +Subject: [PATCH libX11] makekeys: handle the new _EVDEVK xorgproto symbols + +These keys are all defined through a macro in the form: + #define XF86XK_BrightnessAuto _EVDEVK(0x0F4) + +The _EVDEVK macro is simply an offset of 0x10081000. +Let's parse these lines correctly so those keysyms end up in our +hashtables. + +Signed-off-by: Peter Hutterer +--- + src/util/makekeys.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/src/util/makekeys.c b/src/util/makekeys.c +index e847ef4c..4896cc53 100644 +--- a/src/util/makekeys.c ++++ b/src/util/makekeys.c +@@ -78,6 +78,18 @@ parse_line(const char *buf, char *key, KeySym *val, char *prefix) + return 1; + } + ++ /* See if we can parse one of the _EVDEVK symbols */ ++ i = sscanf(buf, "#define %127s _EVDEVK(0x%lx)", key, val); ++ if (i == 2 && (tmp = strstr(key, "XK_"))) { ++ memcpy(prefix, key, (size_t)(tmp - key)); ++ prefix[tmp - key] = '\0'; ++ tmp += 3; ++ memmove(key, tmp, strlen(tmp) + 1); ++ ++ *val += 0x10081000; ++ return 1; ++ } ++ + /* Now try to catch alias (XK_foo XK_bar) definitions, and resolve them + * immediately: if the target is in the form XF86XK_foo, we need to + * canonicalise this to XF86foo before we do the lookup. */ +-- +2.31.1 + diff --git a/libX11.spec b/libX11.spec index 5717c81..d3d58bc 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.7.2 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -18,6 +18,7 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. %endif Patch2: dont-forward-keycode-0.patch +Patch3: 0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -121,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue Jul 27 2021 Peter Hutterer - 1.7.2-3 +- Parse the new _EVDEVK symbols + * Thu Jul 22 2021 Fedora Release Engineering - 1.7.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 62148bbd998fe841333ba776fde6b9d9cf14f7e0 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 7 Dec 2021 12:36:43 +1000 Subject: [PATCH 11/39] libX11 1.7.3 --- .gitignore | 1 + ...le-the-new-_EVDEVK-xorgproto-symbols.patch | 43 ----- ax_gcc_builtin.m4 | 176 ++++++++++++++++++ libX11.spec | 16 +- sources | 2 +- 5 files changed, 190 insertions(+), 48 deletions(-) delete mode 100644 0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch create mode 100644 ax_gcc_builtin.m4 diff --git a/.gitignore b/.gitignore index 9734295..74b3b0b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /libX11-*.tar.bz2 +/libX11-1.7.3.tar.xz diff --git a/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch b/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch deleted file mode 100644 index 55adaae..0000000 --- a/0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch +++ /dev/null @@ -1,43 +0,0 @@ -From e92efc63acd7b377faa9e534f4bf52aaa86be2a9 Mon Sep 17 00:00:00 2001 -From: Peter Hutterer -Date: Tue, 27 Jul 2021 11:46:19 +1000 -Subject: [PATCH libX11] makekeys: handle the new _EVDEVK xorgproto symbols - -These keys are all defined through a macro in the form: - #define XF86XK_BrightnessAuto _EVDEVK(0x0F4) - -The _EVDEVK macro is simply an offset of 0x10081000. -Let's parse these lines correctly so those keysyms end up in our -hashtables. - -Signed-off-by: Peter Hutterer ---- - src/util/makekeys.c | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/src/util/makekeys.c b/src/util/makekeys.c -index e847ef4c..4896cc53 100644 ---- a/src/util/makekeys.c -+++ b/src/util/makekeys.c -@@ -78,6 +78,18 @@ parse_line(const char *buf, char *key, KeySym *val, char *prefix) - return 1; - } - -+ /* See if we can parse one of the _EVDEVK symbols */ -+ i = sscanf(buf, "#define %127s _EVDEVK(0x%lx)", key, val); -+ if (i == 2 && (tmp = strstr(key, "XK_"))) { -+ memcpy(prefix, key, (size_t)(tmp - key)); -+ prefix[tmp - key] = '\0'; -+ tmp += 3; -+ memmove(key, tmp, strlen(tmp) + 1); -+ -+ *val += 0x10081000; -+ return 1; -+ } -+ - /* Now try to catch alias (XK_foo XK_bar) definitions, and resolve them - * immediately: if the target is in the form XF86XK_foo, we need to - * canonicalise this to XF86foo before we do the lookup. */ --- -2.31.1 - diff --git a/ax_gcc_builtin.m4 b/ax_gcc_builtin.m4 new file mode 100644 index 0000000..18e62b8 --- /dev/null +++ b/ax_gcc_builtin.m4 @@ -0,0 +1,176 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_GCC_BUILTIN(BUILTIN) +# +# DESCRIPTION +# +# This macro checks if the compiler supports one of GCC's built-in +# functions; many other compilers also provide those same built-ins. +# +# The BUILTIN parameter is the name of the built-in function. +# +# If BUILTIN is supported define HAVE_. Keep in mind that since +# builtins usually start with two underscores they will be copied over +# into the HAVE_ definition (e.g. HAVE___BUILTIN_EXPECT for +# __builtin_expect()). +# +# The macro caches its result in the ax_cv_have_ variable (e.g. +# ax_cv_have___builtin_expect). +# +# The macro currently supports the following built-in functions: +# +# __builtin_assume_aligned +# __builtin_bswap16 +# __builtin_bswap32 +# __builtin_bswap64 +# __builtin_choose_expr +# __builtin___clear_cache +# __builtin_clrsb +# __builtin_clrsbl +# __builtin_clrsbll +# __builtin_clz +# __builtin_clzl +# __builtin_clzll +# __builtin_complex +# __builtin_constant_p +# __builtin_cpu_init +# __builtin_cpu_is +# __builtin_cpu_supports +# __builtin_ctz +# __builtin_ctzl +# __builtin_ctzll +# __builtin_expect +# __builtin_ffs +# __builtin_ffsl +# __builtin_ffsll +# __builtin_fpclassify +# __builtin_huge_val +# __builtin_huge_valf +# __builtin_huge_vall +# __builtin_inf +# __builtin_infd128 +# __builtin_infd32 +# __builtin_infd64 +# __builtin_inff +# __builtin_infl +# __builtin_isinf_sign +# __builtin_nan +# __builtin_nand128 +# __builtin_nand32 +# __builtin_nand64 +# __builtin_nanf +# __builtin_nanl +# __builtin_nans +# __builtin_nansf +# __builtin_nansl +# __builtin_object_size +# __builtin_parity +# __builtin_parityl +# __builtin_parityll +# __builtin_popcount +# __builtin_popcountl +# __builtin_popcountll +# __builtin_powi +# __builtin_powif +# __builtin_powil +# __builtin_prefetch +# __builtin_trap +# __builtin_types_compatible_p +# __builtin_unreachable +# +# Unsupported built-ins will be tested with an empty parameter set and the +# result of the check might be wrong or meaningless so use with care. +# +# LICENSE +# +# Copyright (c) 2013 Gabriele Svelto +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 7 + +AC_DEFUN([AX_GCC_BUILTIN], [ + AS_VAR_PUSHDEF([ac_var], [ax_cv_have_$1]) + + AC_CACHE_CHECK([for $1], [ac_var], [ + AC_LINK_IFELSE([AC_LANG_PROGRAM([], [ + m4_case([$1], + [__builtin_assume_aligned], [$1("", 0)], + [__builtin_bswap16], [$1(0)], + [__builtin_bswap32], [$1(0)], + [__builtin_bswap64], [$1(0)], + [__builtin_choose_expr], [$1(0, 0, 0)], + [__builtin___clear_cache], [$1("", "")], + [__builtin_clrsb], [$1(0)], + [__builtin_clrsbl], [$1(0)], + [__builtin_clrsbll], [$1(0)], + [__builtin_clz], [$1(0)], + [__builtin_clzl], [$1(0)], + [__builtin_clzll], [$1(0)], + [__builtin_complex], [$1(0.0, 0.0)], + [__builtin_constant_p], [$1(0)], + [__builtin_cpu_init], [$1()], + [__builtin_cpu_is], [$1("intel")], + [__builtin_cpu_supports], [$1("sse")], + [__builtin_ctz], [$1(0)], + [__builtin_ctzl], [$1(0)], + [__builtin_ctzll], [$1(0)], + [__builtin_expect], [$1(0, 0)], + [__builtin_ffs], [$1(0)], + [__builtin_ffsl], [$1(0)], + [__builtin_ffsll], [$1(0)], + [__builtin_fpclassify], [$1(0, 1, 2, 3, 4, 0.0)], + [__builtin_huge_val], [$1()], + [__builtin_huge_valf], [$1()], + [__builtin_huge_vall], [$1()], + [__builtin_inf], [$1()], + [__builtin_infd128], [$1()], + [__builtin_infd32], [$1()], + [__builtin_infd64], [$1()], + [__builtin_inff], [$1()], + [__builtin_infl], [$1()], + [__builtin_isinf_sign], [$1(0.0)], + [__builtin_nan], [$1("")], + [__builtin_nand128], [$1("")], + [__builtin_nand32], [$1("")], + [__builtin_nand64], [$1("")], + [__builtin_nanf], [$1("")], + [__builtin_nanl], [$1("")], + [__builtin_nans], [$1("")], + [__builtin_nansf], [$1("")], + [__builtin_nansl], [$1("")], + [__builtin_object_size], [$1("", 0)], + [__builtin_parity], [$1(0)], + [__builtin_parityl], [$1(0)], + [__builtin_parityll], [$1(0)], + [__builtin_popcount], [$1(0)], + [__builtin_popcountl], [$1(0)], + [__builtin_popcountll], [$1(0)], + [__builtin_powi], [$1(0, 0)], + [__builtin_powif], [$1(0, 0)], + [__builtin_powil], [$1(0, 0)], + [__builtin_prefetch], [$1("")], + [__builtin_trap], [$1()], + [__builtin_types_compatible_p], [$1(int, int)], + [__builtin_unreachable], [$1()], + [m4_warn([syntax], [Unsupported built-in $1, the test may fail]) + $1()] + ) + ])], + [AS_VAR_SET([ac_var], [yes])], + [AS_VAR_SET([ac_var], [no])]) + ]) + + AS_IF([test yes = AS_VAR_GET([ac_var])], + [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1), 1, + [Define to 1 if the system has the `$1' built-in function])], []) + + AS_VAR_POPDEF([ac_var]) +]) diff --git a/libX11.spec b/libX11.spec index d3d58bc..3e736f6 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.2 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.7.3 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -14,11 +14,14 @@ Source0: %{tarball}-%{gitdate}.tar.bz2 Source1: make-git-snapshot.sh Source2: commitid %else -Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}.tar.bz2 +Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}.tar.xz +# 1.7.3 tarball is missing ax_gcc_builtin.m4 +# https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/147` +Source1: ax_gcc_builtin.m4 %endif + Patch2: dont-forward-keycode-0.patch -Patch3: 0001-makekeys-handle-the-new-_EVDEVK-xorgproto-symbols.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -57,6 +60,7 @@ libX11/libxcb interoperability library %prep %autosetup -p1 -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} +cp %{SOURCE1} m4/ %build autoreconf -v --install --force @@ -122,6 +126,10 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Tue Dec 07 2021 Peter Hutterer - 1.7.3-1 +- libX11 1.7.3 +- manually add ax_gcc_builtin, it's missing from the tarball + * Tue Jul 27 2021 Peter Hutterer - 1.7.2-3 - Parse the new _EVDEVK symbols diff --git a/sources b/sources index 4c61bd7..62e32b5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.2.tar.bz2) = d01e5c1848c76218605e5af2d353de6b301a251555b52a38dbe930e6635d5e8a92d1486eb6d328ad5d42a5939e0d16868ffa19a75e5a7863d1a32e0d0727bdc7 +SHA512 (libX11-1.7.3.tar.xz) = abc70837d19f7e104a5db1e6d2cfa1256625332c0b53fec44a0a39916a60a430bb53fd436207892aabe4199ac7a0f9287a06588fcd27e0eed54d45d67bbe1294 From 9fc06a9db2e33a644f36bd5faa7d1666c032d85e Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 10 Dec 2021 14:42:51 +1000 Subject: [PATCH 12/39] libX11 1.7.3.1 --- .gitignore | 3 +- ax_gcc_builtin.m4 | 176 ---------------------------------------------- libX11.spec | 9 ++- sources | 2 +- 4 files changed, 6 insertions(+), 184 deletions(-) delete mode 100644 ax_gcc_builtin.m4 diff --git a/.gitignore b/.gitignore index 74b3b0b..78beced 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ -/libX11-*.tar.bz2 -/libX11-1.7.3.tar.xz +/libX11-*.tar.xz diff --git a/ax_gcc_builtin.m4 b/ax_gcc_builtin.m4 deleted file mode 100644 index 18e62b8..0000000 --- a/ax_gcc_builtin.m4 +++ /dev/null @@ -1,176 +0,0 @@ -# =========================================================================== -# https://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_GCC_BUILTIN(BUILTIN) -# -# DESCRIPTION -# -# This macro checks if the compiler supports one of GCC's built-in -# functions; many other compilers also provide those same built-ins. -# -# The BUILTIN parameter is the name of the built-in function. -# -# If BUILTIN is supported define HAVE_. Keep in mind that since -# builtins usually start with two underscores they will be copied over -# into the HAVE_ definition (e.g. HAVE___BUILTIN_EXPECT for -# __builtin_expect()). -# -# The macro caches its result in the ax_cv_have_ variable (e.g. -# ax_cv_have___builtin_expect). -# -# The macro currently supports the following built-in functions: -# -# __builtin_assume_aligned -# __builtin_bswap16 -# __builtin_bswap32 -# __builtin_bswap64 -# __builtin_choose_expr -# __builtin___clear_cache -# __builtin_clrsb -# __builtin_clrsbl -# __builtin_clrsbll -# __builtin_clz -# __builtin_clzl -# __builtin_clzll -# __builtin_complex -# __builtin_constant_p -# __builtin_cpu_init -# __builtin_cpu_is -# __builtin_cpu_supports -# __builtin_ctz -# __builtin_ctzl -# __builtin_ctzll -# __builtin_expect -# __builtin_ffs -# __builtin_ffsl -# __builtin_ffsll -# __builtin_fpclassify -# __builtin_huge_val -# __builtin_huge_valf -# __builtin_huge_vall -# __builtin_inf -# __builtin_infd128 -# __builtin_infd32 -# __builtin_infd64 -# __builtin_inff -# __builtin_infl -# __builtin_isinf_sign -# __builtin_nan -# __builtin_nand128 -# __builtin_nand32 -# __builtin_nand64 -# __builtin_nanf -# __builtin_nanl -# __builtin_nans -# __builtin_nansf -# __builtin_nansl -# __builtin_object_size -# __builtin_parity -# __builtin_parityl -# __builtin_parityll -# __builtin_popcount -# __builtin_popcountl -# __builtin_popcountll -# __builtin_powi -# __builtin_powif -# __builtin_powil -# __builtin_prefetch -# __builtin_trap -# __builtin_types_compatible_p -# __builtin_unreachable -# -# Unsupported built-ins will be tested with an empty parameter set and the -# result of the check might be wrong or meaningless so use with care. -# -# LICENSE -# -# Copyright (c) 2013 Gabriele Svelto -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 7 - -AC_DEFUN([AX_GCC_BUILTIN], [ - AS_VAR_PUSHDEF([ac_var], [ax_cv_have_$1]) - - AC_CACHE_CHECK([for $1], [ac_var], [ - AC_LINK_IFELSE([AC_LANG_PROGRAM([], [ - m4_case([$1], - [__builtin_assume_aligned], [$1("", 0)], - [__builtin_bswap16], [$1(0)], - [__builtin_bswap32], [$1(0)], - [__builtin_bswap64], [$1(0)], - [__builtin_choose_expr], [$1(0, 0, 0)], - [__builtin___clear_cache], [$1("", "")], - [__builtin_clrsb], [$1(0)], - [__builtin_clrsbl], [$1(0)], - [__builtin_clrsbll], [$1(0)], - [__builtin_clz], [$1(0)], - [__builtin_clzl], [$1(0)], - [__builtin_clzll], [$1(0)], - [__builtin_complex], [$1(0.0, 0.0)], - [__builtin_constant_p], [$1(0)], - [__builtin_cpu_init], [$1()], - [__builtin_cpu_is], [$1("intel")], - [__builtin_cpu_supports], [$1("sse")], - [__builtin_ctz], [$1(0)], - [__builtin_ctzl], [$1(0)], - [__builtin_ctzll], [$1(0)], - [__builtin_expect], [$1(0, 0)], - [__builtin_ffs], [$1(0)], - [__builtin_ffsl], [$1(0)], - [__builtin_ffsll], [$1(0)], - [__builtin_fpclassify], [$1(0, 1, 2, 3, 4, 0.0)], - [__builtin_huge_val], [$1()], - [__builtin_huge_valf], [$1()], - [__builtin_huge_vall], [$1()], - [__builtin_inf], [$1()], - [__builtin_infd128], [$1()], - [__builtin_infd32], [$1()], - [__builtin_infd64], [$1()], - [__builtin_inff], [$1()], - [__builtin_infl], [$1()], - [__builtin_isinf_sign], [$1(0.0)], - [__builtin_nan], [$1("")], - [__builtin_nand128], [$1("")], - [__builtin_nand32], [$1("")], - [__builtin_nand64], [$1("")], - [__builtin_nanf], [$1("")], - [__builtin_nanl], [$1("")], - [__builtin_nans], [$1("")], - [__builtin_nansf], [$1("")], - [__builtin_nansl], [$1("")], - [__builtin_object_size], [$1("", 0)], - [__builtin_parity], [$1(0)], - [__builtin_parityl], [$1(0)], - [__builtin_parityll], [$1(0)], - [__builtin_popcount], [$1(0)], - [__builtin_popcountl], [$1(0)], - [__builtin_popcountll], [$1(0)], - [__builtin_powi], [$1(0, 0)], - [__builtin_powif], [$1(0, 0)], - [__builtin_powil], [$1(0, 0)], - [__builtin_prefetch], [$1("")], - [__builtin_trap], [$1()], - [__builtin_types_compatible_p], [$1(int, int)], - [__builtin_unreachable], [$1()], - [m4_warn([syntax], [Unsupported built-in $1, the test may fail]) - $1()] - ) - ])], - [AS_VAR_SET([ac_var], [yes])], - [AS_VAR_SET([ac_var], [no])]) - ]) - - AS_IF([test yes = AS_VAR_GET([ac_var])], - [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1), 1, - [Define to 1 if the system has the `$1' built-in function])], []) - - AS_VAR_POPDEF([ac_var]) -]) diff --git a/libX11.spec b/libX11.spec index 3e736f6..444e05c 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.3 +Version: 1.7.3.1 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -15,9 +15,6 @@ Source1: make-git-snapshot.sh Source2: commitid %else Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}.tar.xz -# 1.7.3 tarball is missing ax_gcc_builtin.m4 -# https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/147` -Source1: ax_gcc_builtin.m4 %endif @@ -60,7 +57,6 @@ libX11/libxcb interoperability library %prep %autosetup -p1 -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} -cp %{SOURCE1} m4/ %build autoreconf -v --install --force @@ -126,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Fri Dec 10 2021 Peter Hutterer - 1.7.3.1-1 +- libX11 1.7.3.1 + * Tue Dec 07 2021 Peter Hutterer - 1.7.3-1 - libX11 1.7.3 - manually add ax_gcc_builtin, it's missing from the tarball diff --git a/sources b/sources index 62e32b5..a167384 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.3.tar.xz) = abc70837d19f7e104a5db1e6d2cfa1256625332c0b53fec44a0a39916a60a430bb53fd436207892aabe4199ac7a0f9287a06588fcd27e0eed54d45d67bbe1294 +SHA512 (libX11-1.7.3.1.tar.xz) = a2620076db4bf35ab94706c8ab714e9c3fecbdd533cf99cdffeabaf49a1a1d30a233eb2dc76da51b01d50c43f11780aa3b2936668d982a33fa7d5008be44e25b From 60c94ab753279d611494c05c64e501eb5f90408d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 15:38:40 +0000 Subject: [PATCH 13/39] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 444e05c..7b6a9cc 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.7.3.1 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 1.7.3.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Fri Dec 10 2021 Peter Hutterer - 1.7.3.1-1 - libX11 1.7.3.1 From 0bcce1c2a9974d91c6e58235fdd35a163d6837a1 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 31 Mar 2022 16:04:17 +1000 Subject: [PATCH 14/39] libX11 1.7.4 --- libX11.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libX11.spec b/libX11.spec index 7b6a9cc..1dce845 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.3.1 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.7.4 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Mar 31 2022 Peter Hutterer - 1.7.4-1git} +- libX11 1.7.4 + * Thu Jan 20 2022 Fedora Release Engineering - 1.7.3.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/sources b/sources index a167384..e8be9f3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.3.1.tar.xz) = a2620076db4bf35ab94706c8ab714e9c3fecbdd533cf99cdffeabaf49a1a1d30a233eb2dc76da51b01d50c43f11780aa3b2936668d982a33fa7d5008be44e25b +SHA512 (libX11-1.7.4.tar.xz) = 8bfaaf9fc3081c47152d533d30cdc0b2521bfeb088ff813b041c08ffd518c80ba3725bb68cac7c21b521a4bace546f99424700fe21955b498015d14c2f7f9a57 From d79c92ccd589697effea633344da4df8bb5549eb Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 4 Apr 2022 08:01:23 +1000 Subject: [PATCH 15/39] libX11 1.7.5 --- libX11.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libX11.spec b/libX11.spec index 1dce845..0e3217d 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.4 +Version: 1.7.5 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,7 +122,10 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog -* Thu Mar 31 2022 Peter Hutterer - 1.7.4-1git} +* Mon Apr 04 2022 Peter Hutterer - 1.7.5-1 +- libX11 1.7.5 + +* Thu Mar 31 2022 Peter Hutterer - 1.7.4-1 - libX11 1.7.4 * Thu Jan 20 2022 Fedora Release Engineering - 1.7.3.1-2 diff --git a/sources b/sources index e8be9f3..c72852e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.4.tar.xz) = 8bfaaf9fc3081c47152d533d30cdc0b2521bfeb088ff813b041c08ffd518c80ba3725bb68cac7c21b521a4bace546f99424700fe21955b498015d14c2f7f9a57 +SHA512 (libX11-1.7.5.tar.xz) = ef33e2f631226cab27657f46e1fd4cfc928f62f928d8297474e7b993017c8f92b60272eed6515990cdf3a9d34581837b7a3896e584f3546dd26f3790034df347 From 27bbc8d1541d98beb9e794b4874b12b6a517f3b5 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 16 Jun 2022 10:45:35 +1000 Subject: [PATCH 16/39] libX11 1.8.1 --- libX11.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index 0e3217d..b5d158d 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.7.5 +Version: 1.8.1 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jun 16 2022 Peter Hutterer - 1.8.1-1 +- libX11 1.8.1 + * Mon Apr 04 2022 Peter Hutterer - 1.7.5-1 - libX11 1.7.5 diff --git a/sources b/sources index c72852e..99306a8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.7.5.tar.xz) = ef33e2f631226cab27657f46e1fd4cfc928f62f928d8297474e7b993017c8f92b60272eed6515990cdf3a9d34581837b7a3896e584f3546dd26f3790034df347 +SHA512 (libX11-1.8.1.tar.xz) = 2e36d2c47519e0cb2697f588c0ccdf73fbe75c2163f0855c78f7052dc9e920bca081f9d5e39c707a14067f101faef74fc758c8862eeba675b1535b43119d533a From 6497742fabab95ce8b7897204c0f119e22b6b321 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 17:11:24 +0000 Subject: [PATCH 17/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index b5d158d..c1b3682 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.1 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 1.8.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jun 16 2022 Peter Hutterer - 1.8.1-1 - libX11 1.8.1 From 732d5381a60d59f8de04bf75939b78c39d41d9df Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 6 Jan 2023 13:47:10 +1000 Subject: [PATCH 18/39] libX11 1.8.3 --- libX11.spec | 9 ++++++--- sources | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/libX11.spec b/libX11.spec index c1b3682..938c000 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.1 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.3 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -94,7 +94,7 @@ make %{?_smp_mflags} check %{_libdir}/libX11-xcb.so.1.0.0 %files common -%doc AUTHORS COPYING README.md NEWS +%doc AUTHORS COPYING README.md %{_datadir}/X11/locale/ %{_datadir}/X11/XErrorDB %dir /var/cache/libX11 @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Fri Jan 06 2023 Peter Hutterer - 1.8.3-1 +- libX11 1.8.3 + * Thu Jul 21 2022 Fedora Release Engineering - 1.8.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 99306a8..a5cb762 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.1.tar.xz) = 2e36d2c47519e0cb2697f588c0ccdf73fbe75c2163f0855c78f7052dc9e920bca081f9d5e39c707a14067f101faef74fc758c8862eeba675b1535b43119d533a +SHA512 (libX11-1.8.3.tar.xz) = bc862338fed855986659e9ffa641db6b36c3ac9abced590d1b164e3cc24446671936e3688cdca18393129c4ea41777977eeb37e87d8edc14d6cc5d194a9c0325 From 349f1f152d9a1537c34d6aedcdb93e11d5dc45c2 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 16 Jan 2023 14:05:37 +1000 Subject: [PATCH 19/39] Fix XPutBackEvent() issues (#2161020) --- ...utBackEvent-to-support-clients-that-.patch | 57 +++++++++++++++++++ libX11.spec | 6 +- 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch diff --git a/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch b/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch new file mode 100644 index 0000000..6f7e6b4 --- /dev/null +++ b/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch @@ -0,0 +1,57 @@ +From 88399e01be679bfcc9a5e8922ffe2c47f0e56dee Mon Sep 17 00:00:00 2001 +From: Yuxuan Shui +Date: Tue, 3 Jan 2023 15:09:28 +0000 +Subject: [PATCH libX11] Revert "Update XPutBackEvent() to support clients that + put back unpadded events" + +This reverts commit d6d6cba90215d323567fef13d6565756c9956f60. + +The reverted commit intended to fix the problem where an unpadded X +event struct is passed into XPutBackEvent, by creating a padded struct +with _XEventToWire and _XWireToEvent. However, _XWireToEvent updates the +last sequence number in Display, which may cause xlib to complain about +lost sequence numbers. + +IMO, the problem that commit tried to solve is a bug in the client +library, and workaround it inside Xlib is bad practice, especially given +the problem it caused. Plus, the offender cited in the original commit +message, freeglut, has already fixed this problem. + +Fixes: #176 #174 + +Signed-off-by: Yuxuan Shui +--- + src/PutBEvent.c | 15 +-------------- + 1 file changed, 1 insertion(+), 14 deletions(-) + +diff --git a/src/PutBEvent.c b/src/PutBEvent.c +index f7b74b31..0f9df342 100644 +--- a/src/PutBEvent.c ++++ b/src/PutBEvent.c +@@ -79,22 +79,9 @@ XPutBackEvent ( + register XEvent *event) + { + int ret; +- xEvent wire = {0}; +- XEvent lib = {0}; +- Status (*fp)(Display *, XEvent *, xEvent *); +- int type = event->type & 0177; + + LockDisplay(dpy); +- fp = dpy->wire_vec[type]; +- if (fp == NULL) +- fp = _XEventToWire; +- ret = (*fp)(dpy, event, &wire); +- if (ret) +- { +- ret = (*dpy->event_vec[type])(dpy, &lib, &wire); +- if (ret) +- ret = _XPutBackEvent(dpy, &lib); +- } ++ ret = _XPutBackEvent(dpy, event); + UnlockDisplay(dpy); + return ret; + } +-- +2.39.0 + diff --git a/libX11.spec b/libX11.spec index 938c000..c1feb25 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.3 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -19,6 +19,7 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch +Patch3: 0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -122,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Jan 16 2023 Peter Hutterer - 1.8.3-2 +- Fix XPutBackEvent() issues (#2161020) + * Fri Jan 06 2023 Peter Hutterer - 1.8.3-1 - libX11 1.8.3 From be08b7d80c051dab4f457245a8bb9294348739af Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 15:42:23 +0000 Subject: [PATCH 20/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index c1feb25..d03a265 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.3 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 1.8.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Mon Jan 16 2023 Peter Hutterer - 1.8.3-2 - Fix XPutBackEvent() issues (#2161020) From b8a5ff8123e978060e51c817a98d3bdabb5c315e Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 8 Feb 2023 10:43:10 +1000 Subject: [PATCH 21/39] libX11 1.8.4 --- ...utBackEvent-to-support-clients-that-.patch | 57 ------------------- libX11.spec | 8 ++- sources | 2 +- 3 files changed, 6 insertions(+), 61 deletions(-) delete mode 100644 0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch diff --git a/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch b/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch deleted file mode 100644 index 6f7e6b4..0000000 --- a/0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 88399e01be679bfcc9a5e8922ffe2c47f0e56dee Mon Sep 17 00:00:00 2001 -From: Yuxuan Shui -Date: Tue, 3 Jan 2023 15:09:28 +0000 -Subject: [PATCH libX11] Revert "Update XPutBackEvent() to support clients that - put back unpadded events" - -This reverts commit d6d6cba90215d323567fef13d6565756c9956f60. - -The reverted commit intended to fix the problem where an unpadded X -event struct is passed into XPutBackEvent, by creating a padded struct -with _XEventToWire and _XWireToEvent. However, _XWireToEvent updates the -last sequence number in Display, which may cause xlib to complain about -lost sequence numbers. - -IMO, the problem that commit tried to solve is a bug in the client -library, and workaround it inside Xlib is bad practice, especially given -the problem it caused. Plus, the offender cited in the original commit -message, freeglut, has already fixed this problem. - -Fixes: #176 #174 - -Signed-off-by: Yuxuan Shui ---- - src/PutBEvent.c | 15 +-------------- - 1 file changed, 1 insertion(+), 14 deletions(-) - -diff --git a/src/PutBEvent.c b/src/PutBEvent.c -index f7b74b31..0f9df342 100644 ---- a/src/PutBEvent.c -+++ b/src/PutBEvent.c -@@ -79,22 +79,9 @@ XPutBackEvent ( - register XEvent *event) - { - int ret; -- xEvent wire = {0}; -- XEvent lib = {0}; -- Status (*fp)(Display *, XEvent *, xEvent *); -- int type = event->type & 0177; - - LockDisplay(dpy); -- fp = dpy->wire_vec[type]; -- if (fp == NULL) -- fp = _XEventToWire; -- ret = (*fp)(dpy, event, &wire); -- if (ret) -- { -- ret = (*dpy->event_vec[type])(dpy, &lib, &wire); -- if (ret) -- ret = _XPutBackEvent(dpy, &lib); -- } -+ ret = _XPutBackEvent(dpy, event); - UnlockDisplay(dpy); - return ret; - } --- -2.39.0 - diff --git a/libX11.spec b/libX11.spec index d03a265..748ce88 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.3 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.4 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -19,7 +19,6 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch -Patch3: 0001-Revert-Update-XPutBackEvent-to-support-clients-that-.patch BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -123,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Wed Feb 08 2023 Peter Hutterer - 1.8.4-1 +- libX11 1.8.4 + * Thu Jan 19 2023 Fedora Release Engineering - 1.8.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index a5cb762..5bc0f1d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.3.tar.xz) = bc862338fed855986659e9ffa641db6b36c3ac9abced590d1b164e3cc24446671936e3688cdca18393129c4ea41777977eeb37e87d8edc14d6cc5d194a9c0325 +SHA512 (libX11-1.8.4.tar.xz) = 3150a47498b0cb012482ee02efeaae16d9e736288f2b3f917be912e1613d56ad6b4ab180de8820305deb2b95dfd993633f43a65344d75979d6b86bdf110cb63e From 7c1b3b7fa71538fd86722561ff70d5fc13869bae Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 5 Jun 2023 14:56:12 +1000 Subject: [PATCH 22/39] libX11 1.8.5 --- libX11.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index 748ce88..746e4d6 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.4 +Version: 1.8.5 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Jun 05 2023 Peter Hutterer 1.8.5-1 +- libX11 1.8.5 + * Wed Feb 08 2023 Peter Hutterer - 1.8.4-1 - libX11 1.8.4 diff --git a/sources b/sources index 5bc0f1d..66a1cba 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.4.tar.xz) = 3150a47498b0cb012482ee02efeaae16d9e736288f2b3f917be912e1613d56ad6b4ab180de8820305deb2b95dfd993633f43a65344d75979d6b86bdf110cb63e +SHA512 (libX11-1.8.5.tar.xz) = 5274f6073ead119c8f915d302f1e2bf9579f88d28a2a2d084a4be2050b14fb605efe91099c89ba55aeb7ad36ae0ecbd519b0808be0e29f56367d5dd8faa063d3 From 71eeae2909638dd22fa8849d194f5c0c37e2474a Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 16 Jun 2023 13:47:23 +1000 Subject: [PATCH 23/39] libX11 1.8.6 (CVE-2023-3138) --- libX11.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index 746e4d6..171a1a4 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.5 +Version: 1.8.6 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -122,6 +122,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Fri Jun 16 2023 Peter Hutterer - 1.8.6-1 +- libX11 1.8.6 (CVE-2023-3138) + * Mon Jun 05 2023 Peter Hutterer 1.8.5-1 - libX11 1.8.5 diff --git a/sources b/sources index 66a1cba..ecfd2f3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.5.tar.xz) = 5274f6073ead119c8f915d302f1e2bf9579f88d28a2a2d084a4be2050b14fb605efe91099c89ba55aeb7ad36ae0ecbd519b0808be0e29f56367d5dd8faa063d3 +SHA512 (libX11-1.8.6.tar.xz) = b94a578003078a42cea43d80fae2c54a3aaa30f706088bb3546331e9abfc180131cafb37887117abcc5b6116992e299974981eef96ecfcf883cc8a1aba4d1ade From 4b4f0c04823a15c04418da2587aed4d7df8ff9d3 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Mon, 26 Jun 2023 19:49:28 -0400 Subject: [PATCH 24/39] Add libtool build dependency xorg-x11-util-macros 1.20.0 dropped its dependency on libtool. --- libX11.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libX11.spec b/libX11.spec index 171a1a4..0e34913 100644 --- a/libX11.spec +++ b/libX11.spec @@ -20,6 +20,7 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch +BuildRequires: libtool BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 BuildRequires: pkgconfig(xproto) >= 7.0.15 From ee034020e6faa31abf00bac16cf5c616536b3728 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 10:08:51 +0000 Subject: [PATCH 25/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 0e34913..a8def84 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.6 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 1.8.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Fri Jun 16 2023 Peter Hutterer - 1.8.6-1 - libX11 1.8.6 (CVE-2023-3138) From 58cd00a3e91c284b528b0b3c018bf73cd6d6f872 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Thu, 7 Sep 2023 12:47:45 +0200 Subject: [PATCH 26/39] SPDX Migration --- libX11.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libX11.spec b/libX11.spec index a8def84..d5bd032 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,8 +5,8 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.6 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} -License: MIT +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +License: MIT AND X11 URL: http://www.x.org %if 0%{?gitdate} @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Sep 07 2023 José Expósito - 1.8.6-3 +- SPDX Migration + * Thu Jul 20 2023 Fedora Release Engineering - 1.8.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 6ccab29fcdfc16a67bb4c76c2d4b995ea03309f0 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 4 Oct 2023 09:36:38 +1000 Subject: [PATCH 27/39] libX11 1.8.7 --- libX11.spec | 14 ++++++++++++-- sources | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/libX11.spec b/libX11.spec index d5bd032..f87341d 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.6 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.7 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,16 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Wed Oct 04 2023 Peter Hutterer - 1.8.7-1 +- libX11 1.8.7 + - CVE-2023-43785 libX11: out-of-bounds memory access in _XkbReadKeySyms() + - CVE-2023-43786 libX11: stack exhaustion from infinite recursion in + PutSubImage() + - CVE-2023-43787 libX11: integer overflow in XCreateImage() leading to + a heap overflow + - CVE-2023-43788 libXpm: out of bounds read in XpmCreateXpmImageFromBuffer() + - CVE-2023-43789 libXpm: out of bounds read on XPM with corrupted colormap + * Thu Sep 07 2023 José Expósito - 1.8.6-3 - SPDX Migration diff --git a/sources b/sources index ecfd2f3..61762f8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.6.tar.xz) = b94a578003078a42cea43d80fae2c54a3aaa30f706088bb3546331e9abfc180131cafb37887117abcc5b6116992e299974981eef96ecfcf883cc8a1aba4d1ade +SHA512 (libX11-1.8.7.tar.xz) = d53bfc18f38d339a6a695b09835b2ae96b323881678bfe7ddca697605e3bdf4102ff49cc3078880a6c55b5977fcdd0aadaf5429086132de3a5bda302f79a2fa6 From bbba8902620d624d9d1e08b3058724f617809e09 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 03:27:47 +0000 Subject: [PATCH 28/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index f87341d..31a84d7 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.7 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 1.8.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Oct 04 2023 Peter Hutterer - 1.8.7-1 - libX11 1.8.7 - CVE-2023-43785 libX11: out-of-bounds memory access in _XkbReadKeySyms() From fa7172b7ab45841e9290bd170c86e3454f995632 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 01:25:20 +0000 Subject: [PATCH 29/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 31a84d7..8f99a0c 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.7 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 1.8.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 1.8.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 230bce885e77121a7be055636821dadd656b3f75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Mon, 1 Apr 2024 16:20:53 +0200 Subject: [PATCH 30/39] libX11 1.8.8 Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2271340 --- dont-forward-keycode-0.patch | 12 ++++++------ libX11.spec | 7 +++++-- sources | 2 +- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/dont-forward-keycode-0.patch b/dont-forward-keycode-0.patch index c16d874..09eddf8 100644 --- a/dont-forward-keycode-0.patch +++ b/dont-forward-keycode-0.patch @@ -5,10 +5,10 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefFlt.c.jx libX11-1.6.3/modules/im/xim { Xim im = (Xim)ic->core.im; -- if (IS_FABRICATED(im)) { -+ if ((ev->keycode == 0) || IS_FABRICATED(im)) { +- if (_XimIsFabricatedSerial(im, ev->serial)) { ++ if ((ev->keycode == 0) || _XimIsFabricatedSerial(im, ev->serial)) { _XimPendingFilter(ic); - UNMARK_FABRICATED(im); + _XimUnfabricateSerial(im, ev->serial); return NOTFILTERD; diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/ximcp/imDefLkup.c --- libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx 2015-03-09 18:28:45.000000000 -0400 @@ -31,9 +31,9 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/xi #ifdef EXT_FORWARD if (((ev->type == KeyPress) || (ev->type == KeyRelease))) if (_XimExtForwardKeyEvent(ic, (XKeyEvent *)ev, sync)) -@@ -604,6 +615,19 @@ _XimUnregCommitInfo( - Xfree(info->keysym); - ic->private.proto.commit_info = info->next; +@@ -664,6 +664,19 @@ _XimUnregRealCommitInfo( + else + ic->private.proto.commit_info = info->next; Xfree(info); + + /* diff --git a/libX11.spec b/libX11.spec index 8f99a0c..1b2276b 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.7 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.8 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Apr 01 2024 José Expósito - 1.8.8-1 +- libX11 1.8.8 + * Thu Jan 25 2024 Fedora Release Engineering - 1.8.7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/sources b/sources index 61762f8..0f1d705 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.7.tar.xz) = d53bfc18f38d339a6a695b09835b2ae96b323881678bfe7ddca697605e3bdf4102ff49cc3078880a6c55b5977fcdd0aadaf5429086132de3a5bda302f79a2fa6 +SHA512 (libX11-1.8.8.tar.xz) = 4e7ce8f2d88b9475f960ea1d5730ece8953509e0c057cf2d0a2f5fa6a36e6577b0dcd7f16ac91b8fdd804aabec6d7e8f3067a3a8667bd2e41d72dd68ab70ef82 From 836e285c4ee1ae1cb08eee729e9c86b0c814b685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Mon, 8 Apr 2024 09:53:58 +0200 Subject: [PATCH 31/39] libX11 1.8.9 Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2273744 --- dont-forward-keycode-0.patch | 12 ++++++------ libX11.spec | 5 ++++- sources | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/dont-forward-keycode-0.patch b/dont-forward-keycode-0.patch index 09eddf8..c16d874 100644 --- a/dont-forward-keycode-0.patch +++ b/dont-forward-keycode-0.patch @@ -5,10 +5,10 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefFlt.c.jx libX11-1.6.3/modules/im/xim { Xim im = (Xim)ic->core.im; -- if (_XimIsFabricatedSerial(im, ev->serial)) { -+ if ((ev->keycode == 0) || _XimIsFabricatedSerial(im, ev->serial)) { +- if (IS_FABRICATED(im)) { ++ if ((ev->keycode == 0) || IS_FABRICATED(im)) { _XimPendingFilter(ic); - _XimUnfabricateSerial(im, ev->serial); + UNMARK_FABRICATED(im); return NOTFILTERD; diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/ximcp/imDefLkup.c --- libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx 2015-03-09 18:28:45.000000000 -0400 @@ -31,9 +31,9 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/xi #ifdef EXT_FORWARD if (((ev->type == KeyPress) || (ev->type == KeyRelease))) if (_XimExtForwardKeyEvent(ic, (XKeyEvent *)ev, sync)) -@@ -664,6 +664,19 @@ _XimUnregRealCommitInfo( - else - ic->private.proto.commit_info = info->next; +@@ -604,6 +615,19 @@ _XimUnregCommitInfo( + Xfree(info->keysym); + ic->private.proto.commit_info = info->next; Xfree(info); + + /* diff --git a/libX11.spec b/libX11.spec index 1b2276b..43554b3 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,7 +4,7 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.8 +Version: 1.8.9 Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Apr 08 2024 José Expósito - 1.8.9-1 +- libX11 1.8.9 + * Mon Apr 01 2024 José Expósito - 1.8.8-1 - libX11 1.8.8 diff --git a/sources b/sources index 0f1d705..19b468c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.8.tar.xz) = 4e7ce8f2d88b9475f960ea1d5730ece8953509e0c057cf2d0a2f5fa6a36e6577b0dcd7f16ac91b8fdd804aabec6d7e8f3067a3a8667bd2e41d72dd68ab70ef82 +SHA512 (libX11-1.8.9.tar.xz) = 737af91818537295ac86be601b1e3d7e37d150716ec549580913b7cc9a44fee7a6ce9dbc3d46167eed91f23fe857c4dd355ed8f8440fe5fbbf8e9ebe47091b96 From 439322776a01545158c2790b78fe03e883893b9a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 13:12:20 +0000 Subject: [PATCH 32/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 43554b3..a44a1ab 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.9 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 1.8.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Mon Apr 08 2024 José Expósito - 1.8.9-1 - libX11 1.8.9 From e03f31cb6caaa53e1ae79d48b80159a805465c87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Wed, 31 Jul 2024 14:12:21 +0200 Subject: [PATCH 33/39] libX11 1.8.10 --- dont-forward-keycode-0.patch | 16 ++++++++-------- libX11.spec | 7 +++++-- sources | 2 +- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/dont-forward-keycode-0.patch b/dont-forward-keycode-0.patch index c16d874..466c583 100644 --- a/dont-forward-keycode-0.patch +++ b/dont-forward-keycode-0.patch @@ -1,19 +1,19 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefFlt.c.jx libX11-1.6.3/modules/im/ximcp/imDefFlt.c --- libX11-1.6.3/modules/im/ximcp/imDefFlt.c.jx 2015-03-09 18:28:45.000000000 -0400 +++ libX11-1.6.3/modules/im/ximcp/imDefFlt.c 2015-03-10 12:32:31.912149644 -0400 -@@ -142,7 +142,7 @@ _XimProtoKeypressFilter( +@@ -143,7 +143,7 @@ _XimProtoKeypressFilter( { Xim im = (Xim)ic->core.im; -- if (IS_FABRICATED(im)) { -+ if ((ev->keycode == 0) || IS_FABRICATED(im)) { +- if (_XimIsFabricatedSerial(im, ev)) { ++ if ((ev->keycode == 0) || _XimIsFabricatedSerial(im, ev)) { _XimPendingFilter(ic); - UNMARK_FABRICATED(im); + _XimUnfabricateSerial(im, ic, ev); return NOTFILTERD; diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/ximcp/imDefLkup.c --- libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx 2015-03-09 18:28:45.000000000 -0400 +++ libX11-1.6.3/modules/im/ximcp/imDefLkup.c 2015-03-10 12:32:31.911149637 -0400 -@@ -332,6 +332,17 @@ _XimForwardEvent( +@@ -333,6 +333,17 @@ _XimForwardEvent( XEvent *ev, Bool sync) { @@ -31,9 +31,9 @@ diff -up libX11-1.6.3/modules/im/ximcp/imDefLkup.c.jx libX11-1.6.3/modules/im/xi #ifdef EXT_FORWARD if (((ev->type == KeyPress) || (ev->type == KeyRelease))) if (_XimExtForwardKeyEvent(ic, (XKeyEvent *)ev, sync)) -@@ -604,6 +615,19 @@ _XimUnregCommitInfo( - Xfree(info->keysym); - ic->private.proto.commit_info = info->next; +@@ -703,6 +714,19 @@ _XimUnregRealCommitInfo( + else + ic->private.proto.commit_info = info->next; Xfree(info); + + /* diff --git a/libX11.spec b/libX11.spec index a44a1ab..3267545 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.9 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.10 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Wed Jul 31 2024 José Expósito - 1.8.10-1 +- libX11 1.8.10 + * Thu Jul 18 2024 Fedora Release Engineering - 1.8.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index 19b468c..33944c3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.9.tar.xz) = 737af91818537295ac86be601b1e3d7e37d150716ec549580913b7cc9a44fee7a6ce9dbc3d46167eed91f23fe857c4dd355ed8f8440fe5fbbf8e9ebe47091b96 +SHA512 (libX11-1.8.10.tar.xz) = f801f5b77cbc55074f73dc95b29fff7b5e1b13b99641f6e397788ad9f31a29793ed4e8e5bd373122c790ef90627e8f9d6d5e271051c1767a479a85c55cd82bc1 From ddc5e3368d876332178857fbdd3dce97fe614f9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Thu, 22 Aug 2024 21:17:16 +0200 Subject: [PATCH 34/39] Fix spurious Xerror when running synchronized Cherry-pick of https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/264. --- 264.patch | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++++ libX11.spec | 8 +++- 2 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 264.patch diff --git a/264.patch b/264.patch new file mode 100644 index 0000000..730b38d --- /dev/null +++ b/264.patch @@ -0,0 +1,116 @@ +From f3d6ebac35301d4ad068e307f0fbe6aa12ccbccb Mon Sep 17 00:00:00 2001 +From: Olivier Fourdan +Date: Fri, 9 Aug 2024 09:21:31 +0200 +Subject: [PATCH 1/2] Close xcb connection after freeing display structure +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Commit 1472048b7 to fix a colormap threading issue added a display +lock/unlock and a call to SyncHandle() to _XcmsFreeClientCmaps(). + +When running synchronized, that means calling XSync(). + +_XcmsFreeClientCmaps() is called from _XFreeDisplayStructure() via +XCloseDisplay() after the xcb connection is closed. + +So when running synchronized, we may end up calling XSync() after the +xcb connection to the display is closed, which will generate a spurious +XIO error: + + | #0 in _XDefaultIOError () at /lib64/libX11.so.6 + | #1 in _XIOError () at /lib64/libX11.so.6 + | #2 in _XReply () at /lib64/libX11.so.6 + | #3 in XSync () at /lib64/libX11.so.6 + | #4 in _XSyncFunction () at /lib64/libX11.so.6 + | 8#5 in _XFreeDisplayStructure () at /lib64/libX11.so.6 + | 8#6 in XCloseDisplay () at /lib64/libX11.so.6 + +To avoid that issue, closed the xcb connection to the display last. + +v2: And same in OutOfMemory() as well (José Expósito) + +Signed-off-by: Olivier Fourdan +Reviewed-by: José Expósito +Part-of: +--- + src/ClDisplay.c | 4 +++- + src/OpenDis.c | 7 +++++-- + 2 files changed, 8 insertions(+), 3 deletions(-) + +diff --git a/src/ClDisplay.c b/src/ClDisplay.c +index aa904e51..31d3a841 100644 +--- a/src/ClDisplay.c ++++ b/src/ClDisplay.c +@@ -47,6 +47,7 @@ XCloseDisplay ( + { + register _XExtension *ext; + register int i; ++ xcb_connection_t *connection; + + if (!(dpy->flags & XlibDisplayClosing)) + { +@@ -68,7 +69,8 @@ XCloseDisplay ( + if (X_DPY_GET_REQUEST(dpy) != X_DPY_GET_LAST_REQUEST_READ(dpy)) + XSync(dpy, 1); + } +- xcb_disconnect(dpy->xcb->connection); ++ connection = dpy->xcb->connection; + _XFreeDisplayStructure (dpy); ++ xcb_disconnect(connection); + return 0; + } +diff --git a/src/OpenDis.c b/src/OpenDis.c +index 89a0ebdf..6cc43ba3 100644 +--- a/src/OpenDis.c ++++ b/src/OpenDis.c +@@ -709,7 +709,10 @@ void _XFreeDisplayStructure(Display *dpy) + + static void OutOfMemory(Display *dpy) + { +- if(dpy->xcb->connection) +- xcb_disconnect(dpy->xcb->connection); ++ xcb_connection_t *connection = dpy->xcb->connection; ++ + _XFreeDisplayStructure (dpy); ++ ++ if(connection) ++ xcb_disconnect(connection); + } +-- +GitLab + + +From 19b2f5c2d0935cbf9c17ecf30604f80592807b59 Mon Sep 17 00:00:00 2001 +From: Olivier Fourdan +Date: Fri, 9 Aug 2024 10:24:13 +0200 +Subject: [PATCH 2/2] Fix indentation + +Signed-off-by: Olivier Fourdan +Part-of: +--- + src/OpenDis.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/OpenDis.c b/src/OpenDis.c +index 6cc43ba3..9c06d388 100644 +--- a/src/OpenDis.c ++++ b/src/OpenDis.c +@@ -709,10 +709,10 @@ void _XFreeDisplayStructure(Display *dpy) + + static void OutOfMemory(Display *dpy) + { +- xcb_connection_t *connection = dpy->xcb->connection; ++ xcb_connection_t *connection = dpy->xcb->connection; + +- _XFreeDisplayStructure (dpy); ++ _XFreeDisplayStructure (dpy); + +- if(connection) +- xcb_disconnect(connection); ++ if (connection) ++ xcb_disconnect(connection); + } +-- +GitLab + diff --git a/libX11.spec b/libX11.spec index 3267545..0d8d346 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.10 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -20,6 +20,9 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch +# https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/264 +Patch: 264.patch + BuildRequires: libtool BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -123,6 +126,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Aug 22 2024 Florian Müllner - 1.8.10-2 +- Fix spurious Xerror when running synchronized + * Wed Jul 31 2024 José Expósito - 1.8.10-1 - libX11 1.8.10 From 37110de56c90cb98a75567755a0593f54fecea7f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 10:27:14 +0000 Subject: [PATCH 35/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 0d8d346..2245720 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.10 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -126,6 +126,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Fri Jan 17 2025 Fedora Release Engineering - 1.8.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Thu Aug 22 2024 Florian Müllner - 1.8.10-2 - Fix spurious Xerror when running synchronized From 4f2f821164e18d297caebc989a856e8df863f597 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= Date: Mon, 3 Feb 2025 11:06:11 +0100 Subject: [PATCH 36/39] libX11 1.8.11 --- 264.patch | 116 ---------------------------------------------------- libX11.spec | 10 ++--- sources | 2 +- 3 files changed, 6 insertions(+), 122 deletions(-) delete mode 100644 264.patch diff --git a/264.patch b/264.patch deleted file mode 100644 index 730b38d..0000000 --- a/264.patch +++ /dev/null @@ -1,116 +0,0 @@ -From f3d6ebac35301d4ad068e307f0fbe6aa12ccbccb Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Fri, 9 Aug 2024 09:21:31 +0200 -Subject: [PATCH 1/2] Close xcb connection after freeing display structure -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Commit 1472048b7 to fix a colormap threading issue added a display -lock/unlock and a call to SyncHandle() to _XcmsFreeClientCmaps(). - -When running synchronized, that means calling XSync(). - -_XcmsFreeClientCmaps() is called from _XFreeDisplayStructure() via -XCloseDisplay() after the xcb connection is closed. - -So when running synchronized, we may end up calling XSync() after the -xcb connection to the display is closed, which will generate a spurious -XIO error: - - | #0 in _XDefaultIOError () at /lib64/libX11.so.6 - | #1 in _XIOError () at /lib64/libX11.so.6 - | #2 in _XReply () at /lib64/libX11.so.6 - | #3 in XSync () at /lib64/libX11.so.6 - | #4 in _XSyncFunction () at /lib64/libX11.so.6 - | 8#5 in _XFreeDisplayStructure () at /lib64/libX11.so.6 - | 8#6 in XCloseDisplay () at /lib64/libX11.so.6 - -To avoid that issue, closed the xcb connection to the display last. - -v2: And same in OutOfMemory() as well (José Expósito) - -Signed-off-by: Olivier Fourdan -Reviewed-by: José Expósito -Part-of: ---- - src/ClDisplay.c | 4 +++- - src/OpenDis.c | 7 +++++-- - 2 files changed, 8 insertions(+), 3 deletions(-) - -diff --git a/src/ClDisplay.c b/src/ClDisplay.c -index aa904e51..31d3a841 100644 ---- a/src/ClDisplay.c -+++ b/src/ClDisplay.c -@@ -47,6 +47,7 @@ XCloseDisplay ( - { - register _XExtension *ext; - register int i; -+ xcb_connection_t *connection; - - if (!(dpy->flags & XlibDisplayClosing)) - { -@@ -68,7 +69,8 @@ XCloseDisplay ( - if (X_DPY_GET_REQUEST(dpy) != X_DPY_GET_LAST_REQUEST_READ(dpy)) - XSync(dpy, 1); - } -- xcb_disconnect(dpy->xcb->connection); -+ connection = dpy->xcb->connection; - _XFreeDisplayStructure (dpy); -+ xcb_disconnect(connection); - return 0; - } -diff --git a/src/OpenDis.c b/src/OpenDis.c -index 89a0ebdf..6cc43ba3 100644 ---- a/src/OpenDis.c -+++ b/src/OpenDis.c -@@ -709,7 +709,10 @@ void _XFreeDisplayStructure(Display *dpy) - - static void OutOfMemory(Display *dpy) - { -- if(dpy->xcb->connection) -- xcb_disconnect(dpy->xcb->connection); -+ xcb_connection_t *connection = dpy->xcb->connection; -+ - _XFreeDisplayStructure (dpy); -+ -+ if(connection) -+ xcb_disconnect(connection); - } --- -GitLab - - -From 19b2f5c2d0935cbf9c17ecf30604f80592807b59 Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Fri, 9 Aug 2024 10:24:13 +0200 -Subject: [PATCH 2/2] Fix indentation - -Signed-off-by: Olivier Fourdan -Part-of: ---- - src/OpenDis.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/OpenDis.c b/src/OpenDis.c -index 6cc43ba3..9c06d388 100644 ---- a/src/OpenDis.c -+++ b/src/OpenDis.c -@@ -709,10 +709,10 @@ void _XFreeDisplayStructure(Display *dpy) - - static void OutOfMemory(Display *dpy) - { -- xcb_connection_t *connection = dpy->xcb->connection; -+ xcb_connection_t *connection = dpy->xcb->connection; - -- _XFreeDisplayStructure (dpy); -+ _XFreeDisplayStructure (dpy); - -- if(connection) -- xcb_disconnect(connection); -+ if (connection) -+ xcb_disconnect(connection); - } --- -GitLab - diff --git a/libX11.spec b/libX11.spec index 2245720..af1ab0b 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.10 -Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.11 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -20,9 +20,6 @@ Source0: https://xorg.freedesktop.org/archive/individual/lib/%{name}-%{version}. Patch2: dont-forward-keycode-0.patch -# https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/264 -Patch: 264.patch - BuildRequires: libtool BuildRequires: make BuildRequires: xorg-x11-util-macros >= 1.11 @@ -126,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Feb 03 2025 José Expósito - 1.8.11-1 +- libX11 1.8.11 + * Fri Jan 17 2025 Fedora Release Engineering - 1.8.10-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/sources b/sources index 33944c3..f469ec4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.10.tar.xz) = f801f5b77cbc55074f73dc95b29fff7b5e1b13b99641f6e397788ad9f31a29793ed4e8e5bd373122c790ef90627e8f9d6d5e271051c1767a479a85c55cd82bc1 +SHA512 (libX11-1.8.11.tar.xz) = 4e2191258039ad0ea7fe5d22b8b0ab5e1d101b20fa4cd0fb44c5e1ac8b2ffbb3a0ad80ac3a67a3803ca30b972476b739a0c244b2ac8b7de6a32b06dc4e2c674b From 9c9d99c457d4c25b804edc5b8e97f2a4e2bd997b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 19:16:50 +0000 Subject: [PATCH 37/39] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index af1ab0b..df741bc 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.11 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 24 2025 Fedora Release Engineering - 1.8.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Mon Feb 03 2025 José Expósito - 1.8.11-1 - libX11 1.8.11 From 23fe94eb4c98b554a8d8583a88bfc99249b5ee18 Mon Sep 17 00:00:00 2001 From: Olivier Fourdan Date: Thu, 24 Jul 2025 14:21:46 +0200 Subject: [PATCH 38/39] libX11 1.8.12 --- libX11.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libX11.spec b/libX11.spec index df741bc..8715035 100644 --- a/libX11.spec +++ b/libX11.spec @@ -4,8 +4,8 @@ Summary: Core X11 protocol client library Name: libX11 -Version: 1.8.11 -Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Version: 1.8.12 +Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Thu Jul 24 2025 Olivier Fourdan - 1.8.12-1 +- libX11 1.8.12 + * Thu Jul 24 2025 Fedora Release Engineering - 1.8.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild diff --git a/sources b/sources index f469ec4..295b411 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libX11-1.8.11.tar.xz) = 4e2191258039ad0ea7fe5d22b8b0ab5e1d101b20fa4cd0fb44c5e1ac8b2ffbb3a0ad80ac3a67a3803ca30b972476b739a0c244b2ac8b7de6a32b06dc4e2c674b +SHA512 (libX11-1.8.12.tar.xz) = cb7a284d9081a8b67f7d8568d56dc403a4b787e46ac497b07768d236084c01f80f4ea2ebd814f950ac9738adc3baea3912932fc333858195c4f8217744b6f730 From 48daeff665e77cca1a911c060d8691d6520444c2 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 22 Dec 2025 07:45:42 +1000 Subject: [PATCH 39/39] Rebuild to pick up latest xorg proto keysyms (#2413818) --- libX11.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libX11.spec b/libX11.spec index 8715035..293e8fe 100644 --- a/libX11.spec +++ b/libX11.spec @@ -5,7 +5,7 @@ Summary: Core X11 protocol client library Name: libX11 Version: 1.8.12 -Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} +Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} License: MIT AND X11 URL: http://www.x.org @@ -123,6 +123,9 @@ make %{?_smp_mflags} check %{_mandir}/man5/*.5* %changelog +* Mon Dec 22 2025 Peter Hutterer - 1.8.12-2 +- Rebuild to pick up latest xorg proto keysyms (#2413818) + * Thu Jul 24 2025 Olivier Fourdan - 1.8.12-1 - libX11 1.8.12