X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fscpi%2Fscpi.c;h=c3c2f7130e5c14d00a0eef3ed0af90be5bd89d50;hb=be64f90b53d09d9720dc6e06ff8ab61d96c03932;hp=576aa76e39aaac472763e17f4f423bc4c44fec11;hpb=04229f7bfc750f2b67e8dd54ac82ae6bb7eae1e4;p=libsigrok.git diff --git a/src/scpi/scpi.c b/src/scpi/scpi.c index 576aa76e..c3c2f713 100644 --- a/src/scpi/scpi.c +++ b/src/scpi/scpi.c @@ -110,12 +110,16 @@ static struct sr_dev_inst *sr_scpi_scan_resource(struct drv_context *drvc, return NULL; }; - if ((sdi = probe_device(scpi))) - return sdi; + sdi = probe_device(scpi); sr_scpi_close(scpi); - sr_scpi_free(scpi); - return NULL; + + if (sdi) + sdi->status = SR_ST_INACTIVE; + else + sr_scpi_free(scpi); + + return sdi; } SR_PRIV GSList *sr_scpi_scan(struct drv_context *drvc, GSList *options, @@ -607,7 +611,6 @@ SR_PRIV int sr_scpi_get_floatv(struct sr_scpi_dev_inst *scpi, gchar **ptr, **tokens; GArray *response_array; - ret = SR_OK; response = NULL; tokens = NULL; @@ -664,7 +667,6 @@ SR_PRIV int sr_scpi_get_uint8v(struct sr_scpi_dev_inst *scpi, gchar **ptr, **tokens; GArray *response_array; - ret = SR_OK; response = NULL; tokens = NULL;