manson-hcs-3xxx: fix potential NULL dereference

Check pointers' validity before dereferencing them.

This was reported by clang's scan-build.
This commit is contained in:
Gerhard Sittig 2018-02-09 19:14:31 +01:00 committed by Uwe Hermann
parent f62c2ad65d
commit 4072d5b42f
1 changed files with 4 additions and 0 deletions

View File

@ -281,10 +281,14 @@ static int config_list(uint32_t key, GVariant **data,
case SR_CONF_DEVICE_OPTIONS: case SR_CONF_DEVICE_OPTIONS:
return STD_CONFIG_LIST(key, data, sdi, cg, scanopts, drvopts, devopts); return STD_CONFIG_LIST(key, data, sdi, cg, scanopts, drvopts, devopts);
case SR_CONF_VOLTAGE_TARGET: case SR_CONF_VOLTAGE_TARGET:
if (!devc || !devc->model)
return SR_ERR_ARG;
a = devc->model->voltage; a = devc->model->voltage;
*data = std_gvar_min_max_step(a[0], devc->voltage_max_device, a[2]); *data = std_gvar_min_max_step(a[0], devc->voltage_max_device, a[2]);
break; break;
case SR_CONF_CURRENT_LIMIT: case SR_CONF_CURRENT_LIMIT:
if (!devc || !devc->model)
return SR_ERR_ARG;
a = devc->model->current; a = devc->model->current;
*data = std_gvar_min_max_step(a[0], devc->current_max_device, a[2]); *data = std_gvar_min_max_step(a[0], devc->current_max_device, a[2]);
break; break;