From 50cad98d1ba595d6e2da900dbe212b293a058189 Mon Sep 17 00:00:00 2001 From: Daniel Elstner Date: Thu, 23 Jan 2014 01:24:29 +0100 Subject: [PATCH] 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. --- hardware/sysclk-lwla/api.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) 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;