debian/changelog                                             |   28 +++++++++
 debian/local/evoluent-verticalmouse3.fdi                     |   16 +++++
 debian/patches/100_mbemu_nullptr.patch                       |   30 ++++++++++
 debian/patches/lp343528-fd23048-EvdevMBEmuBlockHandler.patch |   32 +++++++++++
 debian/patches/series                                        |    2 
 debian/rules                                                 |    1 
 6 files changed, 109 insertions(+)

New commits:
commit b08a0f37bb815019da96ce7daaab3e9482947fb4
Author: Bryce Harrington <br...@bryceharrington.org>
Date:   Wed Oct 14 20:35:53 2009 -0700

    Add fdi file for Evoluent mouse

diff --git a/debian/changelog b/debian/changelog
index 8272605..d5a2da0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,12 @@
-xserver-xorg-input-evdev (1:2.2.5-1ubuntu2) karmic; urgency=low
+xserver-xorg-input-evdev (1:2.2.5-1ubuntu4) karmic; urgency=low
+
+  * local/evoluent-verticalmouse3.fdi, rules: Add support for Kingsis
+    Evoluent VerticalMouse 3.
+    (LP: #451729)
+
+ -- Bryce Harrington <br...@ubuntu.com>  Wed, 14 Oct 2009 20:21:50 -0700
+
+xserver-xorg-input-evdev (1:2.2.5-1ubuntu3) karmic; urgency=low
 
   * Apply upstream patch from fd.org bug 23048 (LP: #343528)
     Finalize the middle button emulation when a read error occurs (#23048)
diff --git a/debian/local/evoluent-verticalmouse3.fdi 
b/debian/local/evoluent-verticalmouse3.fdi
new file mode 100644
index 0000000..5fa68fe
--- /dev/null
+++ b/debian/local/evoluent-verticalmouse3.fdi
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- Source: http://daniel.hahler.de/evoluent-verticalmouse3-hal-fdi -->
+<deviceinfo version="0.2">
+  <device>
+    <match key="info.capabilities" contains="input.mouse">
+      <match key="input.product" string="Kingsis Peripherals  Evoluent 
VerticalMouse 3">
+        <merge key="input.x11_driver" type="string">evdev</merge>
+        <merge key="input.x11_options.Emulate3Buttons" type="string">no</merge>
+        <merge key="input.x11_options.EmulateWheelButton" 
type="string">0</merge>
+        <merge key="input.x11_options.ZAxisMapping" type="string">4 5</merge>
+        <merge key="input.x11_options.ButtonMapping" type="string">1 2 2 4 5 6 
7 3 8</merge>
+      </match>
+    </match>
+  </device>
+</deviceinfo>
+
diff --git a/debian/rules b/debian/rules
index 6d0dd3e..d8d5c17 100755
--- a/debian/rules
+++ b/debian/rules
@@ -82,6 +82,7 @@ binary-arch: build install serverabi
        dh_install --sourcedir=debian/tmp --list-missing --exclude=evdev_drv.la 
--exclude=usr/share/man/man4
 #      install -d 
debian/xserver-xorg-input-evdev/usr/share/hal/fdi/policy/20thirdparty
 #      install -m 644 debian/local/10-x11-evdev.fdi 
debian/xserver-xorg-input-evdev/usr/share/hal/fdi/policy/20thirdparty/
+       install -m 644 debian/local/evoluent-verticalmouse3.fdi 
debian/xserver-xorg-input-evdev/usr/share/hal/fdi/policy/20thirdparty/
        dh_installman
        dh_link
        dh_strip

commit 43f851020ceb8599e6d2d85ce965321a55fe89d8
Author: Bryce Harrington <br...@bryceharrington.org>
Date:   Mon Oct 12 11:10:52 2009 -0700

    Cherrypick from upstream to fix crash on resume following a device read 
error

diff --git a/debian/changelog b/debian/changelog
index 58480b5..8272605 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,16 @@
+xserver-xorg-input-evdev (1:2.2.5-1ubuntu2) karmic; urgency=low
+
+  * Apply upstream patch from fd.org bug 23048 (LP: #343528)
+    Finalize the middle button emulation when a read error occurs (#23048)
+
+    If a read error occurs, remove the block and wakeup handlers for middle
+    mouse button emulation. Otherwise, they'll still be around after the device
+    has been reopened and overwritten with the new ones created by EvdevOn.
+    Once this happened, future removal of the device can lead to a server
+    crash.
+
+ -- Matt Zimmerman <m...@ubuntu.com>  Sun, 11 Oct 2009 09:47:44 +0100
+
 xserver-xorg-input-evdev (1:2.2.2-1ubuntu2) karmic; urgency=low
 
   * Add 100_mbemu_nullptr.patch:  Null pointer checks for MBEmu*().
diff --git a/debian/patches/100_mbemu_nullptr.patch 
b/debian/patches/100_mbemu_nullptr.patch
index 8e4883b..b30e7f4 100644
--- a/debian/patches/100_mbemu_nullptr.patch
+++ b/debian/patches/100_mbemu_nullptr.patch
@@ -1,12 +1,12 @@
 diff -Nurp xserver-xorg-input-evdev-2.2.2/src/emuMB.c 
xserver-xorg-input-evdev-2.2.2-working/src/emuMB.c
 --- xserver-xorg-input-evdev-2.2.2/src/emuMB.c 2009-03-22 23:35:13.000000000 
-0700
-+++ xserver-xorg-input-evdev-2.2.2-working/src/emuMB.c 2009-07-30 
13:47:51.000000000 -0700
++++ xserver-xorg-input-evdev-2.2.2-working/src/emuMB.c 2009-07-30 
14:30:19.000000000 -0700
 @@ -280,7 +280,7 @@ void EvdevMBEmuWakeupHandler(pointer dat
      EvdevPtr     pEvdev = (EvdevPtr)pInfo->private;
      int ms;
  
 -    if (pEvdev->emulateMB.pending)
-+    if (pEvDev && pEvdev->emulateMB.pending)
++    if (pEvdev && pEvdev->emulateMB.pending)
      {
          ms = pEvdev->emulateMB.expires - GetTimeInMillis();
          if (ms <= 0)
diff --git a/debian/patches/lp343528-fd23048-EvdevMBEmuBlockHandler.patch 
b/debian/patches/lp343528-fd23048-EvdevMBEmuBlockHandler.patch
new file mode 100644
index 0000000..536bf70
--- /dev/null
+++ b/debian/patches/lp343528-fd23048-EvdevMBEmuBlockHandler.patch
@@ -0,0 +1,32 @@
+From 8dc2501caf5887063626d43602c214e1cdc75d81 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutte...@who-t.net>
+Date: Tue, 6 Oct 2009 19:09:33 +1000
+Subject: [PATCH] Finalize the middle button emulation when a read error occurs 
(#23048)
+
+If a read error occurs, remove the block and wakeup handlers for middle
+mouse button emulation. Otherwise, they'll still be around after the device
+has been reopened and overwritten with the new ones created by EvdevOn. Once
+this happened, future removal of the device can lead to a server crash.
+
+X.Org Bug 23048 <http://bugs.freedesktop.org/show_bug.cgi?id=23048>
+
+Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
+---
+ src/evdev.c |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/src/evdev.c b/src/evdev.c
+index da44450..1524a07 100644
+--- a/src/evdev.c
++++ b/src/evdev.c
+@@ -768,6 +768,7 @@ EvdevReadInput(InputInfoPtr pInfo)
+         {
+             if (errno == ENODEV) /* May happen after resume */
+             {
++                EvdevMBEmuFinalize(pInfo);
+                 xf86RemoveEnabledDevice(pInfo);
+                 close(pInfo->fd);
+                 pInfo->fd = -1;
+-- 
+1.6.3.rc1.2.g0164.dirty
+
diff --git a/debian/patches/series b/debian/patches/series
index da93c8f..abad258 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 100_mbemu_nullptr.patch
+lp343528-fd23048-EvdevMBEmuBlockHandler.patch

commit 5ce79f15e1f51967150ac4562476137255c324c5
Author: Bryce Harrington <br...@bryceharrington.org>
Date:   Thu Jul 30 14:24:56 2009 -0700

    Adding patch to catch null pointer errors in the MBEmu code.

diff --git a/debian/changelog b/debian/changelog
index b712a4d..58480b5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+xserver-xorg-input-evdev (1:2.2.2-1ubuntu2) karmic; urgency=low
+
+  * Add 100_mbemu_nullptr.patch:  Null pointer checks for MBEmu*().
+    (LP: #343528)
+
+ -- Bryce Harrington <br...@ubuntu.com>  Thu, 30 Jul 2009 13:53:48 -0700
+
 xserver-xorg-input-evdev (1:2.2.2-1ubuntu1) karmic; urgency=low
 
   * Merge from Debian unstable, remaining changes:
diff --git a/debian/patches/100_mbemu_nullptr.patch 
b/debian/patches/100_mbemu_nullptr.patch
new file mode 100644
index 0000000..8e4883b
--- /dev/null
+++ b/debian/patches/100_mbemu_nullptr.patch
@@ -0,0 +1,30 @@
+diff -Nurp xserver-xorg-input-evdev-2.2.2/src/emuMB.c 
xserver-xorg-input-evdev-2.2.2-working/src/emuMB.c
+--- xserver-xorg-input-evdev-2.2.2/src/emuMB.c 2009-03-22 23:35:13.000000000 
-0700
++++ xserver-xorg-input-evdev-2.2.2-working/src/emuMB.c 2009-07-30 
13:47:51.000000000 -0700
+@@ -280,7 +280,7 @@ void EvdevMBEmuWakeupHandler(pointer dat
+     EvdevPtr     pEvdev = (EvdevPtr)pInfo->private;
+     int ms;
+ 
+-    if (pEvdev->emulateMB.pending)
++    if (pEvDev && pEvdev->emulateMB.pending)
+     {
+         ms = pEvdev->emulateMB.expires - GetTimeInMillis();
+         if (ms <= 0)
+@@ -296,7 +296,7 @@ void EvdevMBEmuBlockHandler(pointer data
+     EvdevPtr        pEvdev= (EvdevPtr) pInfo->private;
+     int             ms;
+ 
+-    if (pEvdev->emulateMB.pending)
++    if (pEvdev && pEvdev->emulateMB.pending)
+     {
+         ms = pEvdev->emulateMB.expires - GetTimeInMillis ();
+         if (ms <= 0)
+@@ -346,7 +346,7 @@ void
+ EvdevMBEmuEnable(InputInfoPtr pInfo, BOOL enable)
+ {
+     EvdevPtr pEvdev = (EvdevPtr)pInfo->private;
+-    if (pEvdev->emulateMB.enabled == MBEMU_AUTO)
++    if (pEvdev && pEvdev->emulateMB.enabled == MBEMU_AUTO)
+         pEvdev->emulateMB.enabled = enable;
+ }
+ 
diff --git a/debian/patches/series b/debian/patches/series
index e69de29..da93c8f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -0,0 +1 @@
+100_mbemu_nullptr.patch


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to