diff options
author | Alexandr Shadchin <Alexandr.Shadchin@gmail.com> | 2011-03-09 20:09:59 +0500 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2011-03-10 08:31:19 +1000 |
commit | a22879c6779283684fe4a61543fc95179b4f5d0b (patch) | |
tree | 1407dcaf38ceec44a1087696ca9468f5d9aadc90 /src/bsd_mouse.c | |
parent | 2e507df6704ebd2cab6ada450ed40d89a2d3ca19 (diff) | |
download | xorg-driver-xf86-input-mouse-a22879c6779283684fe4a61543fc95179b4f5d0b.tar.gz |
Fix BSD issues with new ABI12 init process.
From Bug 34794:
"Until xf86-input-mouse-1.6.0, the MousePreInit() function exited if an
os specific PreInit function existed. It let the os-specific function finish
all initialisations that remained to be done after osInfo->PreInit() was
called.
The code in master now continues, and does things that the bsdMousePreInit()
function in bsd_mouse.c doesn't expect."
Fix up wsconsPreInit to deal with the new init process.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=34794
Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'src/bsd_mouse.c')
-rw-r--r-- | src/bsd_mouse.c | 27 |
1 files changed, 1 insertions, 26 deletions
diff --git a/src/bsd_mouse.c b/src/bsd_mouse.c index e9e2649..14b529d 100644 --- a/src/bsd_mouse.c +++ b/src/bsd_mouse.c @@ -102,7 +102,7 @@ SupportedInterfaces(void) #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) return MSE_SERIAL | MSE_BUS | MSE_PS2 | MSE_AUTO | MSE_MISC; #else - return MSE_SERIAL | MSE_BUS | MSE_PS2 | MSE_XPS2 | MSE_AUTO; + return MSE_SERIAL | MSE_BUS | MSE_PS2 | MSE_XPS2 | MSE_AUTO | MSE_MISC; #endif } @@ -454,31 +454,6 @@ wsconsPreInit(InputInfoPtr pInfo, const char *protocol, int flags) { MouseDevPtr pMse = pInfo->private; - pMse->protocol = protocol; - xf86Msg(X_CONFIG, "%s: Protocol: %s\n", pInfo->name, protocol); - - /* Collect the options, and process the common options. */ - COLLECT_INPUT_OPTIONS(pInfo, NULL); - xf86ProcessCommonOptions(pInfo, pInfo->options); - - /* Check if the device can be opened. */ - pInfo->fd = xf86OpenSerial(pInfo->options); - if (pInfo->fd == -1) { - if (xf86GetAllowMouseOpenFail()) - xf86Msg(X_WARNING, "%s: cannot open input device\n", pInfo->name); - else { - xf86Msg(X_ERROR, "%s: cannot open input device\n", pInfo->name); - free(pMse); - pInfo->private = NULL; - return FALSE; - } - } - xf86CloseSerial(pInfo->fd); - pInfo->fd = -1; - - /* Process common mouse options (like Emulate3Buttons, etc). */ - pMse->CommonOptions(pInfo); - /* Setup the local input proc. */ pInfo->read_input = wsconsReadInput; pMse->xisbscale = sizeof(struct wscons_event); |