xf86-input-tslib: fix crash with xserver 1.12 and later
authorJonathan Liu <net147@gmail.com>
Tue, 11 Feb 2014 07:19:04 +0000 (18:19 +1100)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 16:35:41 +0000 (08:35 -0800)
(From meta-openembedded rev: 34ff6c265a84295a487ead7aa7f858434e703346)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xf86-input-tslib-0.0.6-xf86XInputSetScreen.patch [new file with mode: 0644]
meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb

diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xf86-input-tslib-0.0.6-xf86XInputSetScreen.patch b/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib/xf86-input-tslib-0.0.6-xf86XInputSetScreen.patch
new file mode 100644 (file)
index 0000000..d16b4a5
--- /dev/null
@@ -0,0 +1,31 @@
+Fixes crash when a touchscreen event is received with xserver 1.12 and later:
+X: symbol lookup error: /usr/lib/xorg/modules/input/tslib_drv.so: undefined symbol: xf86XInputSetScreen
+
+Upstream-Status: Pending
+
+Taken from Gentoo:
+https://bugs.gentoo.org/show_bug.cgi?id=446432
+
+diff -ur xf86-input-tslib-0.0.6.orig/src/tslib.c xf86-input-tslib-0.0.6/src/tslib.c
+--- xf86-input-tslib-0.0.6.orig/src/tslib.c    2012-12-05 01:12:16.286597071 +0100
++++ xf86-input-tslib-0.0.6/src/tslib.c 2012-12-05 01:11:02.686598595 +0100
+@@ -75,6 +75,19 @@
+ #define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options))
+ #endif
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) > 13
++static void
++xf86XInputSetScreen(InputInfoPtr      pInfo,
++                  int                 screen_number,
++                  int                 x,
++                  int                 y)
++{
++    if (miPointerGetScreen(pInfo->dev) !=
++          screenInfo.screens[screen_number]) {
++      miPointerSetScreen(pInfo->dev, screen_number, x, y);
++    }
++}
++#endif
+ enum { TSLIB_ROTATE_NONE=0, TSLIB_ROTATE_CW=270, TSLIB_ROTATE_UD=180, TSLIB_ROTATE_CCW=90 };
index fab7fab..acc7528 100644 (file)
@@ -16,6 +16,7 @@ SRC_URI = "http://www.pengutronix.de/software/xf86-input-tslib/download/xf86-inp
            file://xserver-174-XGetPointerControl.patch \
            file://99-xf86-input-tslib.rules \
            file://xf86-input-tslib-port-ABI-12-r48.patch \
+           file://xf86-input-tslib-0.0.6-xf86XInputSetScreen.patch \
 "
 
 SRC_URI[md5sum] = "b7a4d2f11637ee3fcf432e044b1d017f"