Alejandro Mery
18 years ago
2 changed files with 61 additions and 0 deletions
@ -0,0 +1,28 @@
|
||||
From: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
|
||||
Date: Mon, 9 Jul 2007 09:03:00 +0000 (+0200)
|
||||
Subject: Don't crash X when the tablet wasn't found.
|
||||
X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-input-acecad.git;a=commitdiff;h=171d4c8dc6136aa8c14aedd0ee107d6ba957de04
|
||||
|
||||
Don't crash X when the tablet wasn't found.
|
||||
|
||||
X would crash when switching to console if the acecad module was loaded but the tablet had not been configured.
|
||||
|
||||
Fix by properly freeing structures before returning NULL in PreInit()
|
||||
---
|
||||
|
||||
--- a/src/acecad.c
|
||||
+++ b/src/acecad.c
|
||||
@@ -488,8 +488,12 @@ SetupProc_fail:
|
||||
xf86CloseSerial (local->fd);
|
||||
if ((priv) && (priv->buffer))
|
||||
XisbFree (priv->buffer);
|
||||
- if (priv)
|
||||
+ if (priv) {
|
||||
xfree (priv);
|
||||
+ if (local)
|
||||
+ local->private = NULL;
|
||||
+ }
|
||||
+ xf86DeleteInput(local, 0);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -0,0 +1,33 @@
|
||||
From: Alan Coopersmith <alan.coopersmith@sun.com>
|
||||
Date: Wed, 29 Aug 2007 00:31:54 +0000 (-0700)
|
||||
Subject: Make compatible with new input ABI
|
||||
X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-input-acecad.git;a=commitdiff;h=8bcc6d22889cc40c6b7d1582f87d4b2a816167ab
|
||||
|
||||
Make compatible with new input ABI
|
||||
---
|
||||
|
||||
--- a/src/acecad.c
|
||||
+++ b/src/acecad.c
|
||||
@@ -70,6 +70,12 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+/* Previously found in xf86Xinput.h */
|
||||
+#ifdef DBG
|
||||
+#undef DBG
|
||||
+#endif
|
||||
+#define DBG(lvl, f) {if ((lvl) <= xf86GetVerbosity()) f;}
|
||||
+
|
||||
/*****************************************************************************
|
||||
* Local Headers
|
||||
****************************************************************************/
|
||||
@@ -349,7 +355,9 @@ AceCadPreInit(InputDriverPtr drv, IDevPt
|
||||
local->name = dev->identifier;
|
||||
local->type_name = "ACECAD Tablet";
|
||||
local->flags = XI86_POINTER_CAPABLE | XI86_SEND_DRAG_EVENTS;
|
||||
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
|
||||
local->motion_history_proc = xf86GetMotionEvents;
|
||||
+#endif
|
||||
local->control_proc = NULL;
|
||||
local->close_proc = CloseProc;
|
||||
local->switch_mode = NULL;
|
Loading…
Reference in new issue