configure.ac                   |    2 -
 fdi/11-x11-vmmouse.fdi         |    3 ++
 src/vmmouse.c                  |   49 ++++++++++++++++++++++++++++-------------
 tools/69-xorg-vmmouse.rules.in |    2 -
 4 files changed, 39 insertions(+), 17 deletions(-)

New commits:
commit e925b2e6e9d548db5a6646a76d513fb6881f69b4
Author: Zack Rusin <[email protected]>
Date:   Thu Mar 8 09:51:48 2012 -0500

    vmmouse 12.8.0
    
    bump the version number for the new release
    
    Signed-off-by: Zack Rusin <[email protected]>

diff --git a/configure.ac b/configure.ac
index 20d6806..5938ca7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-input-vmmouse],
-        [12.7.0],
+        [12.8.0],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-input-vmmouse)
 

commit 189dc266a66485d48303acbc1a4fbe4642c75e9f
Author: Zack Rusin <[email protected]>
Date:   Wed Mar 7 23:22:35 2012 -0500

    Adjust the kernel name in the udev file.
    
    Some distros (most notable OpenSuSE) are unable to match on the
    'event' devices, since we should be using 'mouse' kernel anyway
    (because that's what the 'udevadm info' reports) switch to it in the
    rules file.
    
    Signed-off-by: Zack Rusin <[email protected]>
    Reviewed-by: Jakob Bornecrantz <[email protected]>

diff --git a/tools/69-xorg-vmmouse.rules.in b/tools/69-xorg-vmmouse.rules.in
index 602afb6..9af3938 100644
--- a/tools/69-xorg-vmmouse.rules.in
+++ b/tools/69-xorg-vmmouse.rules.in
@@ -1 +1 @@
-ACTION=="add|change", ENV{ID_INPUT_MOUSE}=="?*", ATTRS{description}=="i8042 
AUX port", KERNEL=="event[0-9]*", PROGRAM="__BIN_PREFIX__/vmmouse_detect", 
ENV{ID_INPUT.tags}="vmmouse"
+ACTION=="add|change", ENV{ID_INPUT_MOUSE}=="?*", ATTRS{description}=="i8042 
AUX port", KERNEL=="mouse[0-9]*", PROGRAM="__BIN_PREFIX__/vmmouse_detect", 
ENV{ID_INPUT.tags}="vmmouse"

commit 3960dd29b4e839d224b9da4e28ab4302832e906f
Author: Peter Hutterer <[email protected]>
Date:   Sat Nov 12 14:08:13 2011 +1000

    Deal with opaque InputOption types in ABI 14
    
    Tested-by: Jakob Bornecrantz <[email protected]>
    Signed-off-by: Peter Hutterer <[email protected]>
    Signed-off-by: Jakob Bornecrantz <[email protected]>

diff --git a/src/vmmouse.c b/src/vmmouse.c
index ad014ec..285ba26 100644
--- a/src/vmmouse.c
+++ b/src/vmmouse.c
@@ -228,11 +228,40 @@ static char reverseMap[32] = { 0,  4,  2,  6,  1,  5,  3, 
 7,
 #define reverseBits(map, b)    (((b) & ~0x0f) | map[(b) & 0x0f])
 
 #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 14
+
+static InputOption*
+input_option_new(InputOption *list, char *key, char *value)
+{
+   InputOption *new;
+
+   new = calloc(1, sizeof(InputOption));
+   new->key = key;
+   new->value = value;
+   new->next = list;
+   return new;
+}
+
+static void
+input_option_free_list(InputOption **opts)
+{
+   InputOption *tmp = *opts;
+   while(*opts)
+   {
+      tmp = (*opts)->next;
+      free((*opts)->key);
+      free((*opts)->value);
+      free((*opts));
+      *opts = tmp;
+   }
+}
+#endif
+
 static int
 VMMouseInitPassthru(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
 {
    InputAttributes *attrs = NULL;
-   InputOption *input_options = NULL, *tmp, *opts;
+   InputOption *input_options = NULL;
    pointer options;
    DeviceIntPtr dev;
    int rc;
@@ -241,25 +270,15 @@ VMMouseInitPassthru(InputDriverPtr drv, InputInfoPtr 
pInfo, int flags)
    options = xf86ReplaceStrOption(options, "Driver", "mouse");
 
    while(options) {
-      tmp = calloc(1, sizeof(InputOption));
-      tmp->key = xf86OptionName(options);
-      tmp->value = xf86OptionValue(options);
-      tmp->next = input_options;
-      input_options = tmp;
+      input_options = input_option_new(input_options,
+                                       xf86OptionName(options),
+                                       xf86OptionValue(options));
       options = xf86NextOption(options);
    }
 
    rc = NewInputDeviceRequest(input_options, attrs, &dev);
 
-   opts = input_options;
-   tmp = opts;
-   while(opts) {
-      tmp = opts->next;
-      free(opts->key);
-      free(opts->value);
-      free(opts);
-      opts = tmp;
-   }
+   input_option_free_list(&input_options);
 
    return rc;
 }

commit fd140bfbea9fac8f05ad525dd798a5ca39f68c44
Author: Thomas Hellstrom <[email protected]>
Date:   Tue Apr 5 14:42:37 2011 +0200

    Make the fdi script work with FreeBSD
    
    The key "input.originating_device" is not present on FreeBSD.
    Use "freebsd.driver" instead.
    
    Signed-off-by: Thomas Hellstrom <[email protected]>
    Reviewed-by: Michel D�nzer <[email protected]>

diff --git a/fdi/11-x11-vmmouse.fdi b/fdi/11-x11-vmmouse.fdi
index 6151196..77f0abd 100644
--- a/fdi/11-x11-vmmouse.fdi
+++ b/fdi/11-x11-vmmouse.fdi
@@ -5,6 +5,9 @@
       <match key="input.originating_device" contains="i8042_">
         <append key="info.callouts.add" 
type="strlist">hal-probe-vmmouse</append>
       </match>
+      <match key="freebsd.driver" contains="psm">
+        <append key="info.callouts.add" 
type="strlist">hal-probe-vmmouse</append>
+      </match>
     </match>
   </device>
 </deviceinfo>


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to