X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fdevice.c;h=99ccd42f1d9be3b78693a7f626c79e4d2b5010cd;hb=b8fa29a1756eaa4a58b2556dc23dc8089447d549;hp=6fcad410f2bc3802f979f7bb2f9687b755861940;hpb=56c8dd821e7d8ab3602e5fd001f56d91d7b42df3;p=libsigrok.git diff --git a/src/device.c b/src/device.c index 6fcad410..99ccd42f 100644 --- a/src/device.c +++ b/src/device.c @@ -135,10 +135,18 @@ SR_API int sr_dev_channel_enable(struct sr_channel *channel, gboolean state) return SR_OK; } -/* Returns the next enabled channel, wrapping around if necessary. */ -/** @private */ +/** + * Returns the next enabled channel, wrapping around if necessary. + * + * @param[in] sdi The device instance the channel is connected to. + * Must not be NULL. + * @param[in] cur_channel The current channel. + * + * @return A pointer to the next enabled channel of this device. + * + * @private + */ SR_PRIV struct sr_channel *sr_next_enabled_channel(const struct sr_dev_inst *sdi, - struct sr_channel *cur_channel) { struct sr_channel *next_channel; @@ -753,7 +761,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; }