X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fdevice.c;h=519a1726399b060719df6c43f2432900266e3273;hb=6c1a76d1263403f908ac31271a4fd01792488545;hp=069ad1534cf47270155056044bec728ae75c2df8;hpb=6e43c3d5318a8ff320bf6539a9efe7f0b8497e2f;p=libsigrok.git diff --git a/src/device.c b/src/device.c index 069ad153..519a1726 100644 --- a/src/device.c +++ b/src/device.c @@ -529,8 +529,6 @@ SR_API GSList *sr_dev_list(const struct sr_dev_driver *driver) */ SR_API int sr_dev_clear(const struct sr_dev_driver *driver) { - int ret; - if (!driver) { sr_err("Invalid driver."); return SR_ERR_ARG; @@ -548,12 +546,7 @@ SR_API int sr_dev_clear(const struct sr_dev_driver *driver) /* No log message here, too verbose and not very useful. */ - if (driver->dev_clear) - ret = driver->dev_clear(driver); - else - ret = std_dev_clear_with_callback(driver, NULL); - - return ret; + return driver->dev_clear(driver); } /** @@ -617,8 +610,6 @@ SR_API int sr_dev_open(struct sr_dev_inst *sdi) */ SR_API int sr_dev_close(struct sr_dev_inst *sdi) { - int ret; - if (!sdi || !sdi->driver || !sdi->driver->dev_close) return SR_ERR_ARG; @@ -632,9 +623,7 @@ SR_API int sr_dev_close(struct sr_dev_inst *sdi) sr_dbg("%s: Closing device instance.", sdi->driver->name); - ret = sdi->driver->dev_close(sdi); - - return ret; + return sdi->driver->dev_close(sdi); } /** @@ -764,7 +753,9 @@ SR_API const char *sr_dev_inst_connid_get(const struct sr_dev_inst *sdi) if (b != usb->bus || a != usb->address) continue; - usb_get_port_path(devlist[i], connection_id, sizeof(connection_id)); + if (usb_get_port_path(devlist[i], connection_id, sizeof(connection_id)) < 0) + continue; + ((struct sr_dev_inst *)sdi)->connection_id = g_strdup(connection_id); break; }