The 'special_map_*' functions called by 'parse_actions' are expected
to return a count of the number of words of input they have consumed.
The 'special_map_buttom' function errounously returns the number of
actions added instead, causing the program to potentially skip over
requested actions which follow a list of "button" actions.

Signed-off-by: Jason Gerecke <killert...@gmail.com>
---
 tools/xsetwacom.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/xsetwacom.c b/tools/xsetwacom.c
index b9b8a84..bbe25ea 100644
--- a/tools/xsetwacom.c
+++ b/tools/xsetwacom.c
@@ -1021,7 +1021,7 @@ static int special_map_button(Display *dpy, int argc, 
char **argv, unsigned long
                        need_press = need_release = 1;
 
                if (sscanf(btn, "%d", &button) != 1)
-                       return nitems;
+                       break;
 
 
                TRACE("Button map %d [%s,%s]\n", abs(button),
@@ -1044,7 +1044,7 @@ static int special_map_button(Display *dpy, int argc, 
char **argv, unsigned long
        }
 
        *ndata += nitems;
-       return nitems;
+       return i;
 }
 
 /* Return the first keycode to have the required keysym in the current group.
-- 
1.8.3.4


------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=51271111&iu=/4140/ostg.clktrk
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to