gpio.c: fail early in case of error when reading file
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
@@ -451,6 +451,7 @@ mraa_gpio_read(mraa_gpio_context dev)
|
|||||||
if (dev->value_fp == -1) {
|
if (dev->value_fp == -1) {
|
||||||
if (mraa_gpio_get_valfp(dev) != MRAA_SUCCESS) {
|
if (mraa_gpio_get_valfp(dev) != MRAA_SUCCESS) {
|
||||||
syslog(LOG_ERR, "gpio: Failed to get value file pointer");
|
syslog(LOG_ERR, "gpio: Failed to get value file pointer");
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -483,8 +484,11 @@ mraa_gpio_write(mraa_gpio_context dev, int value)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (dev->value_fp == -1) {
|
if (dev->value_fp == -1) {
|
||||||
mraa_gpio_get_valfp(dev);
|
if (mraa_gpio_get_valfp(dev) != MRAA_SUCCESS) {
|
||||||
|
return MRAA_ERROR_INVALID_RESOURCE;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (lseek(dev->value_fp, 0, SEEK_SET) == -1) {
|
if (lseek(dev->value_fp, 0, SEEK_SET) == -1) {
|
||||||
return MRAA_ERROR_INVALID_RESOURCE;
|
return MRAA_ERROR_INVALID_RESOURCE;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user