rpms/synaptics/F-8 synaptics-0.14.6-eviocgbit.patch, NONE, 1.1 synaptics.spec, 1.28, 1.29

Peter Hutterer whot at fedoraproject.org
Sat Aug 30 04:29:19 UTC 2008


Author: whot

Update of /cvs/pkgs/rpms/synaptics/F-8
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv441

Modified Files:
	synaptics.spec 
Added Files:
	synaptics-0.14.6-eviocgbit.patch 
Log Message:
* Sat Aug 30 2008 Peter Hutterer <peter.hutterer at redhat.com> 0.14.6-3
- synaptics-0.14.6-eviocgbit.patch: Fix crash on kernels with extended keymap
  space



synaptics-0.14.6-eviocgbit.patch:

--- NEW FILE synaptics-0.14.6-eviocgbit.patch ---
Fix crash on kernels with extended keymap space

The len argument of EVIOCGBIT(ev,len) is the size of the receiving
buffer in bytes, not maximim number of bits to retrieve.

Signed-off-by: Dmitry Torokhov <dtor at mail.ru>
---
 eventcomm.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/eventcomm.c b/eventcomm.c
index e3257cd..2d0a347 100644
--- a/eventcomm.c
+++ b/eventcomm.c
@@ -89,7 +89,7 @@ event_query_is_touchpad(int fd)
 
     /* Check for ABS_X, ABS_Y, ABS_PRESSURE and BTN_TOOL_FINGER */
 
-    SYSCALL(ret = ioctl(fd, EVIOCGBIT(0, EV_MAX), evbits));
+    SYSCALL(ret = ioctl(fd, EVIOCGBIT(0, sizeof(evbits)), evbits));
     if (ret < 0)
 	return FALSE;
     if (!TEST_BIT(EV_SYN, evbits) ||
@@ -97,7 +97,7 @@ event_query_is_touchpad(int fd)
 	!TEST_BIT(EV_KEY, evbits))
 	return FALSE;
 
-    SYSCALL(ret = ioctl(fd, EVIOCGBIT(EV_ABS, KEY_MAX), evbits));
+    SYSCALL(ret = ioctl(fd, EVIOCGBIT(EV_ABS, sizeof(evbits)), evbits));
     if (ret < 0)
 	return FALSE;
     if (!TEST_BIT(ABS_X, evbits) ||
@@ -105,7 +105,7 @@ event_query_is_touchpad(int fd)
 	!TEST_BIT(ABS_PRESSURE, evbits))
 	return FALSE;
 
-    SYSCALL(ret = ioctl(fd, EVIOCGBIT(EV_KEY, KEY_MAX), evbits));
+    SYSCALL(ret = ioctl(fd, EVIOCGBIT(EV_KEY, sizeof(evbits)), evbits));
     if (ret < 0)
 	return FALSE;
     if (!TEST_BIT(BTN_TOOL_FINGER, evbits))



Index: synaptics.spec
===================================================================
RCS file: /cvs/pkgs/rpms/synaptics/F-8/synaptics.spec,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- synaptics.spec	4 Mar 2008 22:37:58 -0000	1.28
+++ synaptics.spec	30 Aug 2008 04:28:49 -0000	1.29
@@ -2,7 +2,7 @@
 
 Name:           synaptics
 Version:        0.14.6
-Release:	2%{?dist}
+Release:	3%{?dist}
 Summary:        Synaptics Touchpad Driver
 
 Group:          User Interface/X Hardware Support
@@ -11,6 +11,7 @@
 Source0:        http://w1.894.telia.com/~u89404340/touchpad/files/%{name}-%{version}.tar.bz2
 Patch0: synaptics-0.14.6-delibcwrap.patch
 Patch1: synaptics-0.14.6-newx.patch
+Patch2: synaptics-0.14.6-eviocgbit.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}
 BuildRequires:	pkgconfig
 BuildRequires:	xorg-x11-server-sdk >= 1.0.99.901
@@ -47,6 +48,7 @@
 %if "%{?fedora}" >= "9"
 %patch1 -p1 -b .newx
 %endif
+%patch2 -p1 -b .eviocgbit
 # remove included XFree86 headers
 rm -rf Xincludes
 
@@ -73,6 +75,10 @@
 %{_mandir}/man?/*
 
 %changelog
+* Sat Aug 30 2008 Peter Hutterer <peter.hutterer at redhat.com> 0.14.6-3
+- synaptics-0.14.6-eviocgbit.patch: Fix crash on kernels with extended keymap
+  space
+
 * Wed Mar 05 2008 Dave Airlie <airlied at redhat.com> 0.14.6-2
 - rebuild for ppc64
 




More information about the fedora-extras-commits mailing list