* Mon Feb 09 2009 Peter Hutterer <peter.hutterer@redhat.com> 1.5.99.902-5

- xserver-1.5.99.902-mediakeys-crash.patch: don't crash when multimedia keys
  are pressed (#483435)
This commit is contained in:
Peter Hutterer 2009-02-09 00:44:59 +00:00
parent f4905530a0
commit 70653e74e3
2 changed files with 41 additions and 1 deletions

View File

@ -19,7 +19,7 @@
Summary: X.Org X11 X server Summary: X.Org X11 X server
Name: xorg-x11-server Name: xorg-x11-server
Version: 1.5.99.902 Version: 1.5.99.902
Release: 4%{?dist} Release: 5%{?dist}
URL: http://www.x.org URL: http://www.x.org
License: MIT License: MIT
Group: User Interface/X Group: User Interface/X
@ -79,6 +79,8 @@ Patch6008: xserver-1.5.99.3-fix-core-fonts.patch
Patch6009: xserver-1.5.99.902-xinerama.patch Patch6009: xserver-1.5.99.902-xinerama.patch
# cf. bug 482924 # cf. bug 482924
Patch6010: xserver-1.5.99.902-selinux-debugging.patch Patch6010: xserver-1.5.99.902-selinux-debugging.patch
# nominated for 1.6 (FDO #19574)
Patch6011: xserver-1.5.99.902-mediakeys-crash.patch
%define moduledir %{_libdir}/xorg/modules %define moduledir %{_libdir}/xorg/modules
%define drimoduledir %{_libdir}/dri %define drimoduledir %{_libdir}/dri
@ -496,6 +498,10 @@ rm -rf $RPM_BUILD_ROOT
%changelog %changelog
* Mon Feb 09 2009 Peter Hutterer <peter.hutterer@redhat.com> 1.5.99.902-5
- xserver-1.5.99.902-mediakeys-crash.patch: don't crash when multimedia keys
are pressed (#483435)
* Sun Feb 08 2009 Adam Jackson <ajax@redhat.com> 1.5.99.902-4 * Sun Feb 08 2009 Adam Jackson <ajax@redhat.com> 1.5.99.902-4
- xserver-1.5.99.902-selinux-debugging.patch: Try to figure out why selinux - xserver-1.5.99.902-selinux-debugging.patch: Try to figure out why selinux
class map setup fails. class map setup fails.

View File

@ -0,0 +1,34 @@
From 0d4beba90ad82998f123f05dc0a03003f031b6f0 Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@redhat.com>
Date: Fri, 16 Jan 2009 20:38:57 +1000
Subject: [PATCH] mi: force the paired kbd device before CopyKeyClass. (#19574)
Some multi-media keyboards send the key events for multimedia keys through the
device file used by the mouse. Sending a key event through the VCP however
will fail. The VCP doesn't have a key class so the server crashes or (with an
appropriate fix) the event is simply swallowed.
Thus, for key events if the master does not have a key class, get the device
paired with the master (i.e. the VCK) before processing the event any further.
X.Org Bug 19574 <http://bugs.freedesktop.org/show_bug.cgi?id=19574>
---
mi/mieq.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/mi/mieq.c b/mi/mieq.c
index 226caa6..213ad5b 100644
--- a/mi/mieq.c
+++ b/mi/mieq.c
@@ -451,7 +451,11 @@ mieqProcessInputEvents(void)
is transferred. */
if (event->u.u.type == DeviceKeyPress ||
event->u.u.type == DeviceKeyRelease)
+ {
+ if (!master->key)
+ master = GetPairedDevice(master);
CopyKeyClass(dev, master);
+ }
CopyGetMasterEvent(master, dev, event, masterEvents, nevents);
}