aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Boudet2012-07-10 06:30:17 -0500
committerXavier Boudet2012-07-10 06:30:17 -0500
commit27d619bdbad2f8d27ab4edc6fc4964b4a5682498 (patch)
treef27f799037eb3239df19209619bf108483f5c7d2
parent0a4c3bad89ae737d644a806237fccc963debdb09 (diff)
parentd0bb2adfab7935bfc64c9532ae7f2ac7a791d0d6 (diff)
downloadxserver-27d619bdbad2f8d27ab4edc6fc4964b4a5682498.tar.gz
xserver-27d619bdbad2f8d27ab4edc6fc4964b4a5682498.tar.xz
xserver-27d619bdbad2f8d27ab4edc6fc4964b4a5682498.zip
Merge branch 'ubuntu'
Conflicts: debian/changelog debian/patches/series
-rw-r--r--debian/changelog9
-rw-r--r--debian/patches/516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch39
-rw-r--r--debian/patches/series1
3 files changed, 45 insertions, 4 deletions
diff --git a/debian/changelog b/debian/changelog
index 887fec6..d448761 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,10 @@
1xorg-server (2:1.11.4-0ubuntu10.3+ti1.0) precise; urgency=low 1xorg-server (2:1.11.4-0ubuntu10.4) precise-proposed; urgency=low
2 2
3 * Rebased dri2video support on 0ubuntu10.3 3 * Add 516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch
4 * Add patches for driver to handle the transform 4 from upstream 1.12.2. Fixes the server from entering in an infinite
5 loop in certain situations. (LP: #921236)
5 6
6 -- Xavier Boudet <x-boudet@ti.com> Tue, 03 Jul 2012 19:04:38 +0200 7 -- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 05 Jul 2012 23:07:06 +0300
7 8
8xorg-server (2:1.11.4-0ubuntu10.3) precise-proposed; urgency=low 9xorg-server (2:1.11.4-0ubuntu10.3) precise-proposed; urgency=low
9 10
diff --git a/debian/patches/516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch b/debian/patches/516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch
new file mode 100644
index 0000000..7d022e1
--- /dev/null
+++ b/debian/patches/516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch
@@ -0,0 +1,39 @@
1commit b53cdf4c53f0787ed41281278877e0405fcb2674
2Author: Peter Hutterer <peter.hutterer@who-t.net>
3Date: Fri Apr 27 16:31:17 2012 +1000
4
5 dix: don't emulate scroll events for non-existing axes (#47281)
6
7 Test case:
8 - create a device with REL_HWHEEL and ABS_X and ABS_Y. evdev 2.7.0 will set
9 that up as device with 1 relative axis
10 - move pointer to VGA1
11 - xrandr --output VGA1 --off
12
13 Warps the pointer to the new spot and calls GPE with the x/y mask bits set.
14 When running through the loop to check for scroll event, this overruns the
15 axes and may try to emulate scroll events based on random garbage in the
16 memory. If that memory contained non-zero for the scroll type but near-zero
17 for the increment field, the server would hang in an infinite loop.
18
19 This was the trigger for this suggested, never-merged, patch here:
20 http://patchwork.freedesktop.org/patch/9543/
21
22 X.Org Bug 47281 <http://bugs.freedesktop.org/show_bug.cgi?id=47281>
23
24 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
25 Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
26 (cherry picked from commit af88b43f9e604157b74270d609c08bdfa256a792)
27
28--- a/dix/getevents.c
29+++ b/dix/getevents.c
30@@ -1593,6 +1593,9 @@
31 /* Now turn the smooth-scrolling axes back into emulated button presses
32 * for legacy clients, based on the integer delta between before and now */
33 for (i = 0; i < valuator_mask_size(&mask); i++) {
34+ if (i >= pDev->valuator->numAxes)
35+ break;
36+
37 if (!valuator_mask_isset(&mask, i))
38 continue;
39
diff --git a/debian/patches/series b/debian/patches/series
index 9c2df79..6d6a64c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -46,6 +46,7 @@
46513-dix-disable-non-sprite-owners-first-when-disabling-p.patch 46513-dix-disable-non-sprite-owners-first-when-disabling-p.patch
47514-Xi-drop-forced-unpairing-when-changing-the-hierarchy.patch 47514-Xi-drop-forced-unpairing-when-changing-the-hierarchy.patch
48515-dix-disable-all-devices-before-shutdown.patch 48515-dix-disable-all-devices-before-shutdown.patch
49516-dix-dont-emulate-scroll-events-for-non-existing-axes.patch
49 50
50#Rotation patches 51#Rotation patches
511001-xfree86-modes-Let-the-driver-handle-the-transform.patch 521001-xfree86-modes-Let-the-driver-handle-the-transform.patch