• Jason Gerecke's avatar
    HID: wacom: Expect 'touch_max' touches if HID_DG_CONTACTCOUNT not present · df707938
    Jason Gerecke authored
    When introduced in commit 1b5d514, the check 'if (hid_data->cc_index >= 0)'
    in 'wacom_wac_finger_pre_report' was intended to switch where the driver
    got the expected number of contacts from: HID_DG_CONTACTCOUNT if the usage
    was present, or 'touch_max' otherwise. Unfortunately, an oversight worthy
    of a brown paper bag (specifically, that 'cc_index' could never be negative)
    meant that the latter 'else' clause would never be entered.
    
    The patch prior to this one introduced a way for 'cc_index' to be negative,
    but only if HID_DG_CONTACTCOUNT is present in some report _other_ than the
    one being processed. To ensure the 'else' clause is also entered for devices
    which don't have HID_DG_CONTACTCOUNT on _any_ report, we add the additional
    constraint that 'cc_report' be non-zero (which is true only if the usage is
    present in some report).
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarJason Gerecke <jason.gerecke@wacom.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    df707938
wacom_wac.c 113 KB