Toshaan Bharvani
2 years ago
commit
7d1ab5c974
3 changed files with 364 additions and 0 deletions
@ -0,0 +1,43 @@
@@ -0,0 +1,43 @@
|
||||
From e92efc63acd7b377faa9e534f4bf52aaa86be2a9 Mon Sep 17 00:00:00 2001 |
||||
From: Peter Hutterer <peter.hutterer@who-t.net> |
||||
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 <peter.hutterer@who-t.net> |
||||
--- |
||||
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 |
||||
|
@ -0,0 +1,53 @@
@@ -0,0 +1,53 @@
|
||||
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( |
||||
{ |
||||
Xim im = (Xim)ic->core.im; |
||||
|
||||
- if (IS_FABRICATED(im)) { |
||||
+ if ((ev->keycode == 0) || IS_FABRICATED(im)) { |
||||
_XimPendingFilter(ic); |
||||
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 |
||||
+++ libX11-1.6.3/modules/im/ximcp/imDefLkup.c 2015-03-10 12:32:31.911149637 -0400 |
||||
@@ -332,6 +332,17 @@ _XimForwardEvent( |
||||
XEvent *ev, |
||||
Bool sync) |
||||
{ |
||||
+ /* |
||||
+ * Don't forward a key event which has keycode=0. |
||||
+ * keycode=0 is reserved for special purpose to let Xmb/wcLookupString() |
||||
+ * functions know that there is a commited string available from IM. |
||||
+ */ |
||||
+ if (((ev->type == KeyPress) || (ev->type == KeyRelease))) { |
||||
+ if (((XKeyEvent *)ev)->keycode == 0) { |
||||
+ return True; |
||||
+ } |
||||
+ } |
||||
+ |
||||
#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; |
||||
Xfree(info); |
||||
+ |
||||
+ /* |
||||
+ * "Commit" uses fabricated flag to process a commited string |
||||
+ * from IM engine. |
||||
+ * Turn off the fabricated flag here (unregister the commited |
||||
+ * information function). Otherwise, next regular key press |
||||
+ * event will be ignored at _XimProtoKeypressFilter() and it |
||||
+ * will not be passed to IM engine. |
||||
+ */ |
||||
+ if (IS_FABRICATED(ic)) { |
||||
+ UNMARK_FABRICATED(ic); |
||||
+ } |
||||
+ |
||||
return; |
||||
} |
||||
|
@ -0,0 +1,268 @@
@@ -0,0 +1,268 @@
|
||||
%global tarball libX11 |
||||
#global gitdate 20130524 |
||||
%global gitversion a3bdd2b09 |
||||
|
||||
Summary: Core X11 protocol client library |
||||
Name: libX11 |
||||
Version: 1.7.0 |
||||
Release: 7%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist} |
||||
License: MIT |
||||
URL: http://www.x.org |
||||
|
||||
%if 0%{?gitdate} |
||||
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 |
||||
%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 |
||||
BuildRequires: pkgconfig(xproto) >= 7.0.15 |
||||
BuildRequires: xorg-x11-xtrans-devel >= 1.0.3-4 |
||||
BuildRequires: libxcb-devel >= 1.2 |
||||
BuildRequires: pkgconfig(xau) pkgconfig(xdmcp) |
||||
BuildRequires: perl(Pod::Usage) |
||||
|
||||
Requires: %{name}-common >= %{version}-%{release} |
||||
|
||||
%description |
||||
Core X11 protocol client library. |
||||
|
||||
%package common |
||||
Summary: Common data for libX11 |
||||
BuildArch: noarch |
||||
|
||||
%description common |
||||
libX11 common data |
||||
|
||||
%package devel |
||||
Summary: Development files for %{name} |
||||
Requires: %{name} = %{version}-%{release} |
||||
Requires: %{name}-xcb = %{version}-%{release} |
||||
|
||||
%description devel |
||||
X.Org X11 libX11 development package |
||||
|
||||
%package xcb |
||||
Summary: XCB interop for libX11 |
||||
Conflicts: %{name} < %{version}-%{release} |
||||
|
||||
%description xcb |
||||
libX11/libxcb interoperability library |
||||
|
||||
%prep |
||||
%autosetup -p1 -n %{tarball}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}} |
||||
|
||||
%build |
||||
autoreconf -v --install --force |
||||
%configure --disable-silent-rules --disable-static |
||||
|
||||
make %{?_smp_mflags} |
||||
|
||||
%install |
||||
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" |
||||
|
||||
# create/own compose cache dir |
||||
mkdir -p $RPM_BUILD_ROOT/var/cache/libX11/compose |
||||
|
||||
# We intentionally don't ship *.la files |
||||
find $RPM_BUILD_ROOT -type f -name '*.la' -delete |
||||
|
||||
# FIXME: Don't install Xcms.txt - find out why upstream still ships this. |
||||
find $RPM_BUILD_ROOT -name 'Xcms.txt' -delete |
||||
|
||||
# FIXME package these properly |
||||
rm -rf $RPM_BUILD_ROOT%{_docdir} |
||||
|
||||
%check |
||||
make %{?_smp_mflags} check |
||||
|
||||
%ldconfig_post |
||||
%ldconfig_postun |
||||
|
||||
%files |
||||
%{_libdir}/libX11.so.6 |
||||
%{_libdir}/libX11.so.6.4.0 |
||||
|
||||
%files xcb |
||||
%{_libdir}/libX11-xcb.so.1 |
||||
%{_libdir}/libX11-xcb.so.1.0.0 |
||||
|
||||
%files common |
||||
%doc AUTHORS COPYING README.md NEWS |
||||
%{_datadir}/X11/locale/ |
||||
%{_datadir}/X11/XErrorDB |
||||
%dir /var/cache/libX11 |
||||
%dir /var/cache/libX11/compose |
||||
|
||||
%files devel |
||||
%{_includedir}/X11/ImUtil.h |
||||
%{_includedir}/X11/XKBlib.h |
||||
%{_includedir}/X11/Xcms.h |
||||
%{_includedir}/X11/Xlib.h |
||||
%{_includedir}/X11/XlibConf.h |
||||
%{_includedir}/X11/Xlibint.h |
||||
%{_includedir}/X11/Xlib-xcb.h |
||||
%{_includedir}/X11/Xlocale.h |
||||
%{_includedir}/X11/Xregion.h |
||||
%{_includedir}/X11/Xresource.h |
||||
%{_includedir}/X11/Xutil.h |
||||
%{_includedir}/X11/cursorfont.h |
||||
%{_includedir}/X11/extensions/XKBgeom.h |
||||
%{_libdir}/libX11.so |
||||
%{_libdir}/libX11-xcb.so |
||||
%{_libdir}/pkgconfig/x11.pc |
||||
%{_libdir}/pkgconfig/x11-xcb.pc |
||||
%{_mandir}/man3/*.3* |
||||
%{_mandir}/man5/*.5* |
||||
|
||||
%changelog |
||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.7.0-7 |
||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags |
||||
Related: rhbz#1991688 |
||||
|
||||
* Tue Aug 03 2021 Peter Hutterer <peter.hutterer@redhat.com> - 1.7.0-6 |
||||
- Parse the EVDEVK keysyms (#1988944) |
||||
|
||||
* Tue May 04 2021 Peter Hutterer <peter.hutterer@redhat.com> 1.7.0-5 |
||||
- Rebuild to pick up the new xorgproto keysyms (#1954345) |
||||
|
||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.7.0-4 |
||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 |
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild |
||||
|
||||
* Tue Dec 01 2020 Peter Hutterer <peter.hutterer@redhat.com> 1.7.0-2 |
||||
- libX11 1.7.0 (with the tarball this time) |
||||
|
||||
* Tue Dec 01 2020 Peter Hutterer <peter.hutterer@redhat.com> 1.7.0-1 |
||||
- libX11 1.7.0 |
||||
- switch to using the autosetup rpm macro |
||||
|
||||
* Mon Nov 09 2020 Peter Hutterer <peter.hutterer@redhat.com> 1.6.12-3 |
||||
- Fix a race-condition in poll_for_response (#1758384) |
||||
|
||||
* Thu Nov 5 11:12:56 AEST 2020 Peter Hutterer <peter.hutterer@redhat.com> - 1.6.12-2 |
||||
- Add BuildRequires for make |
||||
|
||||
* Wed Aug 26 2020 Peter Hutterer <peter.hutterer@redhat.com> 1.6.12-1 |
||||
- libX11 1.6.12 (CVE-2020-14363, CVE 2020-14344) |
||||
|
||||
* Fri Jul 31 2020 Adam Jackson <ajax@redhat.com> - 1.6.9-5 |
||||
- Fix server reply validation issue in XIM (CVE 2020-14344) |
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.9-4 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild |
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.9-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild |
||||
|
||||
* Wed Dec 11 2019 Peter Hutterer <peter.hutterer@redhat.com> 1.6.9-2 |
||||
- handle ssharp in XConvertCase |
||||
|
||||
* Wed Oct 09 2019 Adam Jackson <ajax@redhat.com> - 1.6.9-1 |
||||
- libX11 1.6.9 |
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.8-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild |
||||
|
||||
* Thu Jun 20 2019 Peter Hutterer <peter.hutterer@redhat.com> 1.6.8-2 |
||||
- rebuild to pick up the new xorgproto keysyms |
||||
|
||||
* Thu Jun 20 2019 Peter Hutterer <peter.hutterer@redhat.com> 1.6.8-1 |
||||
- libX11 1.6.8 |
||||
|
||||
* Thu Mar 21 2019 Adam Jackson <ajax@redhat.com> - 1.6.7-3 |
||||
- Rebuild for xtrans 1.4.0 |
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.7-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild |
||||
|
||||
* Tue Oct 09 2018 Adam Jackson <ajax@redhat.com> - 1.6.7-1 |
||||
- libX11 1.6.7 |
||||
|
||||
* Tue Aug 21 2018 Adam Jackson <ajax@redhat.com> - 1.6.6-1 |
||||
- libX11 1.6.6 |
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.5-9 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild |
||||
|
||||
* Fri Jun 29 2018 Adam Jackson <ajax@redhat.com> - 1.6.5-8 |
||||
- Use ldconfig scriptlet macros |
||||
|
||||
* Fri Mar 23 2018 Peter Hutterer <peter.hutterer@redhat.com> 1.6.5-7 |
||||
- Fix FTBS caused by fake size in the XimCacheStruct (#1556616) |
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.5-6 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
||||
|
||||
* Tue Oct 17 2017 Peter Hutterer <peter.hutterer@redhat.com> 1.6.5-5 |
||||
- run make check as part of the build (#1502658) |
||||
|
||||
* Tue Aug 01 2017 Adam Jackson <ajax@redhat.com> - 1.6.5-4 |
||||
- Split libX11-xcb to its own subpackage. This doesn't have much effect at |
||||
the moment because x11-xcb.pc still lists both libX11 and libxcb in |
||||
Requires, but once that's fixed eg. libEGL should be able to be installed |
||||
without libX11. |
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.5-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
||||
|
||||
* Fri May 12 2017 Hans de Goede <hdegoede@redhat.com> - 1.6.5-2 |
||||
- Rebuild against new xproto to pick up support for new keysyms |
||||
|
||||
* Wed Apr 26 2017 Adam Jackson <ajax@redhat.com> - 1.6.5-1 |
||||
- libX11 1.6.5 |
||||
|
||||
* Thu Feb 16 2017 Rex Dieter <rdieter@fedoraproject.org> - 1.6.4-6 |
||||
- create/own /var/cache/libx11/compose (#962764) |
||||
- %%build: --disable-silent-rules |
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.4-5 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild |
||||
|
||||
* Fri Jan 20 2017 Peter Hutterer <peter.hutterer@redhat.com> 1.6.4-4 |
||||
- Actually apply the patch from 1.6.4-3 |
||||
|
||||
* Mon Jan 09 2017 Peter Hutterer <peter.hutterer@redhat.com> 1.6.4-3 |
||||
- Fix a bug in the memory leak fix from 1.6.4-2 |
||||
|
||||
* Thu Jan 05 2017 Peter Hutterer <peter.hutterer@redhat.com> 1.6.4-2 |
||||
- Plug a memory leak in XListFonts() |
||||
|
||||
* Wed Oct 05 2016 Adam Jackson <ajax@redhat.com> - 1.6.4-1 |
||||
- libX11 1.6.4 |
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.3-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
||||
|
||||
* Thu Jan 28 2016 Peter Hutterer <peter.hutterer@redhat.com> |
||||
- Remove unnecessary defattr |
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.3-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
||||
|
||||
* Tue Mar 10 2015 Adam Jackson <ajax@redhat.com> 1.6.3-1 |
||||
- libX11 1.6.3 |
||||
|
||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.2-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild |
||||
|
||||
* Mon Jun 30 2014 Adam Jackson <ajax@redhat.com> 1.6.2-1 |
||||
- libX11 1.6.2 plus a fix for interleaved xcb/xlib usage |
||||
- Use >= for the -common Requires |
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.1-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild |
||||
|
||||
* Tue Jul 30 2013 Peter Hutterer <peter.hutterer@redhat.com> 1.6.1-1 |
||||
- libX11 1.6.1 |
||||
|
||||
* Tue Jun 04 2013 Peter Hutterer <peter.hutterer@redhat.com> 1.6.0-1 |
||||
- libX11 1.6.0 |
Loading…
Reference in new issue