The names of action atoms are currently created without regard to the property they will be stored in. This results in both e.g. button 1 and StripLeftUp using atoms with the name "Wacom button action 1". When setting either button 1 or StripLeftUp, we ask the server for an atom named "Wacom button action 1" and in both cases receive the *same* atom. This means button 1 is nothing more than an alias for StripLeft up (and similarly for the other actions which share the same name).
This patch uses the name of the property the action will be stored in as the prefix to prevent this aliasing from occuring. Signed-off-by: Jason Gerecke <killert...@gmail.com> --- tools/xsetwacom.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/tools/xsetwacom.c b/tools/xsetwacom.c index 2c546b1..7cf0d05 100644 --- a/tools/xsetwacom.c +++ b/tools/xsetwacom.c @@ -1264,7 +1264,7 @@ static void special_map_property(Display *dpy, XDevice *dev, Atom btnact_prop, i if (!prop) { char buff[64]; - sprintf(buff, "Wacom button action %d", (offset + 1)); + sprintf(buff, "%s action %d", XGetAtomName(dpy, btnact_prop), (offset + 1)); prop = XInternAtom(dpy, buff, False); btnact_data[offset] = prop; } -- 1.7.9.1 ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel