diff options
author | Benjamin Tissoires <benjamin.tissoires@redhat.com> | 2017-03-27 16:59:32 +0200 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2017-04-06 14:36:38 +0200 |
commit | a9525b80feb1b6ae40244b16b0558cbdc64f28cd (patch) | |
tree | 7e4afaaa44e435672db65a5a16612059d19d42f1 /drivers/hid/hid-logitech-hidpp.c | |
parent | a52ec107fa81c8f799654b860e262f07bd14d63a (diff) | |
download | linux-a9525b80feb1b6ae40244b16b0558cbdc64f28cd.tar.bz2 |
HID: logitech-hidpp: return an error if the queried feature is not present
Or the device just answers a valid feature '0'.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Tested-by: Bastien Nocera <hadess@hadess.net>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/hid-logitech-hidpp.c')
-rw-r--r-- | drivers/hid/hid-logitech-hidpp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c index 9a9771a31108..22129ddac3ae 100644 --- a/drivers/hid/hid-logitech-hidpp.c +++ b/drivers/hid/hid-logitech-hidpp.c @@ -503,6 +503,9 @@ static int hidpp_root_get_feature(struct hidpp_device *hidpp, u16 feature, if (ret) return ret; + if (response.fap.params[0] == 0) + return -ENOENT; + *feature_index = response.fap.params[0]; *feature_type = response.fap.params[1]; |