Module: wine Branch: master Commit: 9267fcd99fb54d58b0928734a7ffe41fc479a4f3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9267fcd99fb54d58b0928734a7...
Author: Jeremy White jwhite@winehq.org Date: Sun Dec 23 10:56:16 2007 -0600
wintab32: Correctly handle devices with a device id of 0.
The XInput macros such as DeviceMotionNotify will correctly return an eventclass of 0 if the device id is 0. Given that, we cannot use eventclass != 0 as a meaningful test, and must instead use the returned type.
---
dlls/winex11.drv/wintab.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/dlls/winex11.drv/wintab.c b/dlls/winex11.drv/wintab.c index 9b86345..11c8bfc 100644 --- a/dlls/winex11.drv/wintab.c +++ b/dlls/winex11.drv/wintab.c @@ -867,19 +867,19 @@ int X11DRV_AttachEventQueueToTablet(HWND hOwner) if (the_device->num_classes > 0) { DeviceKeyPress(the_device, key_press_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (key_press_type) event_number++; DeviceKeyRelease(the_device, key_release_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (key_release_type) event_number++; DeviceButtonPress(the_device, button_press_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (button_press_type) event_number++; DeviceButtonRelease(the_device, button_release_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (button_release_type) event_number++; DeviceMotionNotify(the_device, motion_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (motion_type) event_number++; ProximityIn(the_device, proximity_in_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (proximity_in_type) event_number++; ProximityOut(the_device, proximity_out_type, event_list[event_number]); - if (event_list[event_number]) event_number++; + if (proximity_out_type) event_number++;
if (key_press_type) X11DRV_register_event_handler( key_press_type, key_event ); if (key_release_type) X11DRV_register_event_handler( key_release_type, key_event );