From: Daniel Elstner Date: Thu, 23 Jan 2014 00:24:29 +0000 (+0100) Subject: sysclk-lwla: Do not reset drv_context.instances on scan. X-Git-Tag: libsigrok-0.3.0~194 X-Git-Url: https://sigrok.org/gitaction?a=commitdiff_plain;h=50cad98d1ba595d6e2da900dbe212b293a058189;p=libsigrok.git sysclk-lwla: Do not reset drv_context.instances on scan. Apparently, frontends may call scan() more than once to accumulate multiple devices, so do not reset the instance list pointer at the start of each scan. Also, number devices continuously across scans. --- diff --git a/hardware/sysclk-lwla/api.c b/hardware/sysclk-lwla/api.c index 5bae5d54..8b15b696 100644 --- a/hardware/sysclk-lwla/api.c +++ b/hardware/sysclk-lwla/api.c @@ -91,7 +91,6 @@ static GSList *scan(GSList *options) int device_index; drvc = di->priv; - drvc->instances = NULL; conn = USB_VID_PID; for (node = options; node != NULL; node = node->next) { @@ -103,7 +102,7 @@ static GSList *scan(GSList *options) } usb_devices = sr_usb_find(drvc->sr_ctx->libusb_ctx, conn); devices = NULL; - device_index = 0; + device_index = g_slist_length(drvc->instances); for (node = usb_devices; node != NULL; node = node->next) { usb = node->data;