The 'last_type' variable within 'get_actions' stores the type of the last action encountered. When dealing with "key" or "button" actions, we use that information to determine if we need to print out the action prefix or not (if the type hasn't changed, its safe to leave the prefix out).
For some reason, this variable was marked as 'static', which causes it to retain its value across invocations. The function is only called once for any given button, meaning that we improperly retain the "last_type" across buttons. If the last action on a button is of e.g. type "key" and the first action of the next button is as well, then the "key" prefix will be missing from the printed output of that second button's actions. Making this variable non-static fixes this issue and ensures each run of the function is independent. Fixes: http://sourceforge.net/p/linuxwacom/bugs/303/ Fixes: https://github.com/linuxwacom/xf86-input-wacom/issues/3 Signed-off-by: Jason Gerecke <jason.gere...@wacom.com> --- tools/xsetwacom.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/xsetwacom.c b/tools/xsetwacom.c index c1fec71..95f7a6c 100644 --- a/tools/xsetwacom.c +++ b/tools/xsetwacom.c @@ -1951,6 +1951,7 @@ static int get_actions(Display *dpy, XDevice *dev, unsigned long nitems, bytes_after, *data; int i; char buff[1024] = {0}; + int last_type; prop = XInternAtom(dpy, param->prop_name, True); @@ -1979,9 +1980,9 @@ static int get_actions(Display *dpy, XDevice *dev, AnyPropertyType, &type, &format, &nitems, &bytes_after, (unsigned char**)&data); + last_type = 0; for (i = 0; i < nitems; i++) { - static int last_type; unsigned long action = data[i]; int current_type; int detail; -- 2.7.0 ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel