|
@@ -1042,7 +1042,11 @@ void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct
|
|
|
|
|
|
/*
|
|
|
* Ignore out-of-range values as per HID specification,
|
|
|
- * section 5.10 and 6.2.25
|
|
|
+ * section 5.10 and 6.2.25.
|
|
|
+ *
|
|
|
+ * The logical_minimum < logical_maximum check is done so that we
|
|
|
+ * don't unintentionally discard values sent by devices which
|
|
|
+ * don't specify logical min and max.
|
|
|
*/
|
|
|
if ((field->flags & HID_MAIN_ITEM_VARIABLE) &&
|
|
|
(field->logical_minimum < field->logical_maximum) &&
|