Bug 64029

Summary: evdev crashes if ABS_X/Y is missing from multitouch devices
Product: xorg Reporter: Peter Hutterer <peter.hutterer>
Component: Input/evdevAssignee: Peter Hutterer <peter.hutterer>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: peter.hutterer
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Peter Hutterer 2013-04-29 01:39:26 UTC
If a device has ABS_MT_POSITION_X but not ABS_X no valuator class is set up. When the device receives an event later, it crashes.

#0  0x0000000000461d61 in valuator_mask_isset (mask=0x0, valuator=0) at inpututils.c:502
#1  0x00007f49878fead9 in EvdevApplyCalibration (pEvdev=0x1a96e90, mask=0x0) at evdev.c:461
#2  0x00007f49878ff014 in EvdevProcessValuators (pInfo=0x19e4d60) at evdev.c:564
#3  0x00007f49878fff04 in EvdevProcessSyncEvent (pInfo=0x19e4d60, ev=0x7fffa1980f68) at evdev.c:1020
#4  0x00007f498790010b in EvdevProcessEvent (pInfo=0x19e4d60, ev=0x7fffa1980f68) at evdev.c:1066
#5  0x00007f49879003cb in EvdevReadInput (pInfo=0x19e4d60) at evdev.c:1138
#6  0x00000000004ad2be in xf86SigioReadInput (fd=13, closure=0x19e4d60) at xf86Events.c:300
#7  0x00000000004e29c6 in xf86SIGIO (sig=29) at ./../shared/sigio.c:110

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.