iio: hid-sensor: fix return of -EINVAL on invalid values in ret or value
authorColin Ian King <colin.king@canonical.com>
Wed, 19 Apr 2017 14:35:48 +0000 (15:35 +0100)
committerJonathan Cameron <jic23@kernel.org>
Thu, 27 Apr 2017 06:16:45 +0000 (07:16 +0100)
Ensure that when an invalid value in ret or value is found -EINVAL
is returned. A previous commit broke the way the return error is
being returned and instead caused the return code in ret to be
re-assigned rather than be returned.

Fixes: 5d9854eaea776 ("iio: hid-sensor: Store restore poll and hysteresis on S3")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/common/hid-sensors/hid-sensor-attributes.c

index 1c0874cdf665c8b3928fc1b725edf86a9441c2a3..aeb09a85d7a8dd01a4d2f9d3ab16a3aa0e483085 100644 (file)
@@ -230,7 +230,7 @@ int hid_sensor_write_samp_freq_value(struct hid_sensor_common *st,
        ret = sensor_hub_set_feature(st->hsdev, st->poll.report_id,
                                     st->poll.index, sizeof(value), &value);
        if (ret < 0 || value < 0)
-               ret = -EINVAL;
+               return -EINVAL;
 
        ret = sensor_hub_get_feature(st->hsdev,
                                     st->poll.report_id,
@@ -283,7 +283,7 @@ int hid_sensor_write_raw_hyst_value(struct hid_sensor_common *st,
                                     st->sensitivity.index, sizeof(value),
                                     &value);
        if (ret < 0 || value < 0)
-               ret = -EINVAL;
+               return -EINVAL;
 
        ret = sensor_hub_get_feature(st->hsdev,
                                     st->sensitivity.report_id,