File bug463512.diff of Package x11-input-wacom
--- wcmConfig.c 2008/08/31 20:23:19 1.33
+++ wcmConfig.c 2008/10/08 23:22:20 1.34
@@ -378,7 +378,7 @@
DBG(1, priv->debugLevel, ErrorF("xf86WcmUninit\n"));
-#ifndef WCM_UNINIT_CALLED
+#ifndef WCM_XORG_XSERVER_1_4
gWacomModule.DevProc(local->dev, DEVICE_OFF);
#endif
--- xf86Wacom.c 2008/10/23 22:00:49 1.47
+++ xf86Wacom.c 2008/12/02 00:27:48 1.48
@@ -531,8 +532,14 @@
nbaxes = priv->naxes; /* X, Y, Pressure, Tilt-X, Tilt-Y, Wheel */
nbbuttons = priv->nbuttons; /* Use actual number of buttons, if possible */
- nbkeys = nbbuttons; /* Same number of keys since any button may be */
- /* configured as an either mouse button or key */
+ nbkeys = nbbuttons; /* Same number of keys since any button may be
+ * configured as an either mouse button or key */
+
+ if (!nbbuttons)
+ nbbuttons = nbkeys = 1; /* Xserver 1.5 or later crashes when
+ * nbbuttons = 0 while sending a beep
+ * This is only a workaround.
+ */
DBG(10, priv->debugLevel, ErrorF("xf86WcmRegisterX11Devices "
"(%s) %d buttons, %d keys, %d axes\n",
@@ -757,7 +764,7 @@
ErrorF("%s waiting 100 msec (total %dms) for device to become ready\n", local->name, wait);
usleep(100*1000);
}
- ErrorF("%s no synaptics event device found (checked %d nodes, waited %d msec)\n",
+ ErrorF("%s no Wacom event device found (checked %d nodes, waited %d msec)\n",
local->name, i + 1, wait);
return FALSE;
}
--- wcmConfig.c.orig 2009-01-06 20:50:49.500785990 +0100
+++ wcmConfig.c 2009-01-06 20:54:00.313270700 +0100
@@ -387,6 +387,7 @@
xfree(priv->pPressCurve);
xfree(priv);
+ local->private = NULL;
xf86DeleteInput(local, 0);
}