tech-x11 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/os-support/bsd



On Mon, 19 Jan 2009 00:54:29 +0000 (UTC)
Christos Zoulas <christos%netbsd.org@localhost> wrote:

> 
> Module Name:  xsrc
> Committed By: christos
> Date:         Mon Jan 19 00:54:29 UTC 2009
> 
> Modified Files:
>       xsrc/external/mit/xorg-server/dist/hw/xfree86/os-support/bsd:
>           bsd_mouse.c
> 
> Log Message:
> fix ioctl.

Is this fix tested? At least in my case, protocol is "wsmouse", not
"auto" so SetupAuto() is not even called. Also it seems X closes and
reopens the mouse device between probe and actual use so the ioctl()
isn't effective.

I had to apply a similar patch (attached) to xf86-input-mouse to get
vertical cursor movement back on i386.

(I'm using X.org from pkgsrc in case that matters.)

-Tobias
$NetBSD$

--- src/mouse.c.orig    2008-03-20 19:55:51.000000000 +0100
+++ src/mouse.c
@@ -76,6 +76,11 @@
 #define NEED_XF86_TYPES        /* for xisb.h when !XFree86LOADER */
 #endif
 
+#ifdef __NetBSD__
+#include <time.h>
+#include <dev/wscons/wsconsio.h>
+#endif
+
 #include "compiler.h"
 
 #include "xisb.h"
@@ -1760,6 +1765,13 @@ MouseProc(DeviceIntPtr device, int what)
        if (pInfo->fd == -1)
            xf86Msg(X_WARNING, "%s: cannot open input device\n", pInfo->name);
        else {
+#if defined(__NetBSD__) && defined(WSCONS_SUPPORT) && 
defined(WSMOUSEIO_SETVERSION)
+           if (!strcmp(pMse->protocol, "wsmouse")) {
+               int version = WSMOUSE_EVENT_VERSION;
+               if (ioctl(pInfo->fd, WSMOUSEIO_SETVERSION, &version) == -1)
+                   xf86Msg(X_WARNING, "%s: cannot set version\n", pInfo->name);
+            } 
+#endif
            if (pMse->xisbscale)
                pMse->buffer = XisbNew(pInfo->fd, pMse->xisbscale * 4);
            else


Home | Main Index | Thread Index | Old Index