forked from pool/xorg-x11-server
This commit is contained in:
parent
5421fee007
commit
4b7fba22e0
31
commit-50e80c3.diff
Normal file
31
commit-50e80c3.diff
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
commit 50e80c39870adfdc84fdbc00dddf1362117ad443
|
||||||
|
Author: Peter Hutterer <peter@cs.unisa.edu.au>
|
||||||
|
Date: Wed Dec 19 16:20:36 2007 +1030
|
||||||
|
|
||||||
|
include: never overwrite realInputProc with enqueueInputProc. Bug #13511
|
||||||
|
|
||||||
|
In some cases (triggered by a key repeat during a sync grab) XKB unwrapping
|
||||||
|
can overwrite the device's realInputProc with the enqueueInputProc. When the
|
||||||
|
grab is released and the events are replayed, we end up in an infinite loop.
|
||||||
|
Each event is replayed and in replaying pushed to the end of the queue again.
|
||||||
|
|
||||||
|
This fix is a hack only. It ensures that the realInputProc is never
|
||||||
|
overwritten with the enqueueInputProc.
|
||||||
|
|
||||||
|
This fixes Bug #13511 (https://bugs.freedesktop.org/show_bug.cgi?id=13511)
|
||||||
|
(cherry picked from commit eace88989c3b65d5c20e9f37ea9b23c7c8e19335)
|
||||||
|
|
||||||
|
diff --git a/include/xkbsrv.h b/include/xkbsrv.h
|
||||||
|
index 6425e37..bf386e7 100644
|
||||||
|
--- a/include/xkbsrv.h
|
||||||
|
+++ b/include/xkbsrv.h
|
||||||
|
@@ -258,7 +258,8 @@ typedef struct
|
||||||
|
device->public.processInputProc = proc; \
|
||||||
|
oldprocs->processInputProc = \
|
||||||
|
oldprocs->realInputProc = device->public.realInputProc; \
|
||||||
|
- device->public.realInputProc = proc; \
|
||||||
|
+ if (proc != device->public.enqueueInputProc) \
|
||||||
|
+ device->public.realInputProc = proc; \
|
||||||
|
oldprocs->unwrapProc = device->unwrapProc; \
|
||||||
|
device->unwrapProc = unwrapproc;
|
||||||
|
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 1 15:23:25 CET 2008 - sndirsch@suse.de
|
||||||
|
|
||||||
|
- commit-50e80c3.diff:
|
||||||
|
* never overwrite realInputProc with enqueueInputProc
|
||||||
|
(bnc#357989, bfo#13511)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jan 24 16:26:23 CET 2008 - sndirsch@suse.de
|
Thu Jan 24 16:26:23 CET 2008 - sndirsch@suse.de
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ BuildRequires: libjpeg-devel
|
|||||||
Url: http://xorg.freedesktop.org/
|
Url: http://xorg.freedesktop.org/
|
||||||
%define EXPERIMENTAL 0
|
%define EXPERIMENTAL 0
|
||||||
Version: 7.3
|
Version: 7.3
|
||||||
Release: 53
|
Release: 55
|
||||||
License: X11/MIT
|
License: X11/MIT
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Group: System/X11/Servers/XF86_4
|
Group: System/X11/Servers/XF86_4
|
||||||
@ -103,6 +103,7 @@ Patch95: CVE-2007-6427-xinput.diff
|
|||||||
Patch96: CVE-2007-6428-TOG-cup.diff
|
Patch96: CVE-2007-6428-TOG-cup.diff
|
||||||
Patch97: CVE-2007-6429-shm_evi.diff
|
Patch97: CVE-2007-6429-shm_evi.diff
|
||||||
Patch98: CVE-2008-0006-pcf_font.diff
|
Patch98: CVE-2008-0006-pcf_font.diff
|
||||||
|
Patch99: commit-50e80c3.diff
|
||||||
|
|
||||||
%description
|
%description
|
||||||
This package contains the X.Org Server.
|
This package contains the X.Org Server.
|
||||||
@ -233,6 +234,7 @@ popd
|
|||||||
%patch96 -p1
|
%patch96 -p1
|
||||||
%patch97 -p1
|
%patch97 -p1
|
||||||
%patch98 -p1
|
%patch98 -p1
|
||||||
|
%patch99 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
pushd xorg-docs-*
|
pushd xorg-docs-*
|
||||||
@ -539,6 +541,10 @@ exit 0
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Feb 01 2008 sndirsch@suse.de
|
||||||
|
- commit-50e80c3.diff:
|
||||||
|
* never overwrite realInputProc with enqueueInputProc
|
||||||
|
(bnc#357989, bfo#13511)
|
||||||
* Thu Jan 24 2008 sndirsch@suse.de
|
* Thu Jan 24 2008 sndirsch@suse.de
|
||||||
- only switch to radeon driver in %%post if radeonold driver is no
|
- only switch to radeon driver in %%post if radeonold driver is no
|
||||||
longer available (Bug #355009)
|
longer available (Bug #355009)
|
||||||
|
Loading…
Reference in New Issue
Block a user