Commit b0083492 broke pad buttons by no longer setting the wcmBTNChannel.
With this variable left uninitialized, pad button data would be stored
in another channel (e.g. 0) without any other data like proximity set.

This commit sets wcmBTNChannel to point to the channel used for
storing pad data whenever a pad packet is detected.

Signed-off-by: Jason Gerecke <killert...@gmail.com>
---
 src/wcmUSB.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/wcmUSB.c b/src/wcmUSB.c
index f90def9..a2c2b3b 100644
--- a/src/wcmUSB.c
+++ b/src/wcmUSB.c
@@ -767,12 +767,16 @@ static int protocol5Serial(int device_type, unsigned int 
serial) {
  */
 static int usbChooseChannel(WacomCommonPtr common, int device_type, unsigned 
int serial)
 {
+       wcmUSBData* private = common->private;
+
        /* figure out the channel to use based on serial number */
        int i, channel = -1;
 
        /* force events from PAD device to PAD_CHANNEL */
-       if (serial == -1)
+       if (serial == -1) {
                channel = PAD_CHANNEL;
+               private->wcmBTNChannel = channel;
+       }
 
        /* find existing channel */
        if (channel < 0)
-- 
1.7.12.2


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to