rpms/xorg-x11-drv-synaptics/F-9 xf86-input-synaptics-0.15.1-stale-option-list.patch, NONE, 1.1 xorg-x11-drv-synaptics.spec, 1.4, 1.5

Peter Hutterer whot at fedoraproject.org
Tue Sep 23 00:09:50 UTC 2008


Author: whot

Update of /cvs/pkgs/rpms/xorg-x11-drv-synaptics/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv6660

Modified Files:
	xorg-x11-drv-synaptics.spec 
Added Files:
	xf86-input-synaptics-0.15.1-stale-option-list.patch 
Log Message:
* Mon Sep 22 2008 Peter Hutterer <peter.hutterer at redhat.com> 0.15.1-2
- xf86-input-synaptics-0.15.1-stale-option-list.patch - don't use stale option
  list pointers. RH #462771.



xf86-input-synaptics-0.15.1-stale-option-list.patch:

--- NEW FILE xf86-input-synaptics-0.15.1-stale-option-list.patch ---
>From 566b4dcc0b0f45ad83012314b67836ba2018cf9e Mon Sep 17 00:00:00 2001
From: Henrik Rydberg <rydberg at euromail.se>
Date: Wed, 10 Sep 2008 20:53:43 +0200
Subject: [PATCH] Do not use stale option list pointers

The xf86ReplaceStrOption may change the option list pointer. Also make sure
no stale option pointers are used after a call to SetDeviceAndProtocol().

Signed-off-by: Henrik Rydberg <rydberg at euromail.se>
---
 src/eventcomm.c |    3 ++-
 src/synaptics.c |   13 ++++++++-----
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/src/eventcomm.c b/src/eventcomm.c
index 8474c54..25d0c73 100644
--- a/src/eventcomm.c
+++ b/src/eventcomm.c
@@ -365,7 +365,8 @@ EventAutoDevProbe(LocalDevicePtr local)
 				touchpad_found = TRUE;
 			    xf86Msg(X_PROBED, "%s auto-dev sets device to %s\n",
 				    local->name, fname);
-			    xf86ReplaceStrOption(local->options, "Device", fname);
+			    local->options =
+			    	xf86ReplaceStrOption(local->options, "Device", fname);
 			    event_query_axis_ranges(fd, local);
 			}
 			SYSCALL(close(fd));
diff --git a/src/synaptics.c b/src/synaptics.c
index 045a051..1f96cc3 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -177,8 +177,10 @@ SetDeviceAndProtocol(LocalDevicePtr local)
     device = xf86FindOptionValue(local->options, "Device");
     if (!device) {
 	device = xf86FindOptionValue(local->options, "Path");
-	if (device)
-	    xf86ReplaceStrOption(local->options, "Device", device);
+	if (device) {
+	    local->options =
+	    	xf86ReplaceStrOption(local->options, "Device", device);
+	}
     }
     if (device && strstr(device, "/dev/input/event")) {
 #ifdef BUILD_EVENTCOMM
@@ -351,12 +353,13 @@ SynapticsPreInit(InputDriverPtr drv, IDevPtr dev, int flags)
 
     xf86CollectInputOptions(local, NULL, NULL);
 
-    opts = local->options;
-
-    xf86OptionListReport(opts);
+    xf86OptionListReport(local->options);
 
+    /* may change local->options */
     SetDeviceAndProtocol(local);
 
+    opts = local->options;
+
     /* open the touchpad device */
     local->fd = xf86OpenSerial(opts);
     if (local->fd == -1) {
-- 
1.5.4.3



Index: xorg-x11-drv-synaptics.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-synaptics/F-9/xorg-x11-drv-synaptics.spec,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- xorg-x11-drv-synaptics.spec	9 Sep 2008 14:35:28 -0000	1.4
+++ xorg-x11-drv-synaptics.spec	23 Sep 2008 00:09:19 -0000	1.5
@@ -5,7 +5,7 @@
 Name:           xorg-x11-drv-synaptics
 Summary:        Xorg X11 synaptics input driver
 Version:        0.15.1
-Release:        1%{?dist}
+Release:        2%{?dist}
 URL:            http://www.x.org
 License:        MIT
 Group:          User Interface/X Hardware Support
@@ -17,6 +17,8 @@
 Patch3:		 xf86-input-synaptics-0.15.1-edges.patch
 Patch4:		 xf86-input-synaptics-0.15.1-preprobe.patch
 Patch5:		 xf86-input-synaptics-0.15.1-dont-crash-without-Device.patch
+# Bug 462771 - Changes in synaptics.fdi don't have any effect.
+Patch6:		 xf86-input-synaptics-0.15.1-stale-option-list.patch
 ExcludeArch:    s390 s390x
 
 BuildRequires:  libtool pkgconfig
@@ -65,6 +67,7 @@
 %patch3 -p1 -b .edges
 %patch4 -p1 -b .preprobe
 %patch5 -p1 -b .dont-crash-without-device
+%patch6 -p1 -b .stale-option-list
 
 %build
 autoreconf -v --install --force || exit 1
@@ -98,6 +101,10 @@
 %doc COPYING README
 
 %changelog
+* Mon Sep 22 2008 Peter Hutterer <peter.hutterer at redhat.com> 0.15.1-2
+- xf86-input-synaptics-0.15.1-stale-option-list.patch - don't use stale option
+  list pointers. RH #462771.
+
 * Tue Sep 9 2008 Peter Hutterer <peter.hutterer at redhat.com> 0.15.1-1
 - update to upstream 0.15.1
 - remove xf86-input-synaptics-0.15.0-tap.patch - merged in upstream.




More information about the fedora-extras-commits mailing list