X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fgwinstek-gds-800%2Fapi.c;h=249074b891834ba10cb90559bd47473f1af2811e;hb=53279f13e4694fcf2aba314baade418941b0bc3e;hp=d64d43eb43dd3a73f10ce9efbef66744aae87d59;hpb=c3cd66a00cdb4afbd43108563d979eebfbafaf69;p=libsigrok.git diff --git a/src/hardware/gwinstek-gds-800/api.c b/src/hardware/gwinstek-gds-800/api.c index d64d43eb..249074b8 100644 --- a/src/hardware/gwinstek-gds-800/api.c +++ b/src/hardware/gwinstek-gds-800/api.c @@ -98,8 +98,6 @@ static int dev_open(struct sr_dev_inst *sdi) return SR_ERR; } - sdi->status = SR_ST_ACTIVE; - return SR_OK; } @@ -107,17 +105,12 @@ static int dev_close(struct sr_dev_inst *sdi) { struct sr_scpi_dev_inst *scpi; - if (sdi->status != SR_ST_ACTIVE) - return SR_ERR_DEV_CLOSED; - scpi = sdi->conn; - if (scpi) { - if (sr_scpi_close(scpi) < 0) - return SR_ERR; - sdi->status = SR_ST_INACTIVE; - } - return SR_OK; + if (!scpi) + return SR_ERR_BUG; + + return sr_scpi_close(scpi); } static int config_get(uint32_t key, GVariant **data, const struct sr_dev_inst *sdi, @@ -236,6 +229,7 @@ static struct sr_dev_driver gwinstek_gds_800_driver_info = { .cleanup = std_cleanup, .scan = scan, .dev_list = std_dev_list, + .dev_clear = std_dev_clear, .config_get = config_get, .config_set = config_set, .config_list = config_list,