]> sigrok.org Git - libsigrok.git/blobdiff - device.c
LA8: Free memory from g_*alloc*() via g_freee().
[libsigrok.git] / device.c
index 0cc5e55256978230eb565aa879ad22b74d31ff2e..fea3d60bedfc235f87e59f5d5f6ba958a897892c 100644 (file)
--- a/device.c
+++ b/device.c
@@ -61,12 +61,18 @@ int sr_device_plugin_init(struct sr_device_plugin *plugin)
 
 void sr_device_close_all(void)
 {
+       int ret;
        struct sr_device *device;
 
        while (devices) {
                device = devices->data;
-               if (device->plugin && device->plugin->close)
-                       device->plugin->close(device->plugin_index);
+               if (device->plugin && device->plugin->closedev) {
+                       ret = device->plugin->closedev(device->plugin_index);
+                       if (ret != SR_OK) {
+                               sr_err("dev: %s: could not close device %d",
+                                      __func__, device->plugin_index);
+                       }
+               }
                sr_device_destroy(device);
        }
 }
@@ -194,7 +200,7 @@ struct sr_probe *sr_device_probe_find(struct sr_device *device, int probenum)
        return found_probe;
 }
 
-/* TODO: return SIGROK_ERR if probenum not found */
+/* TODO: return SR_ERR if probenum not found */
 void sr_device_probe_name(struct sr_device *device, int probenum,
                          const char *name)
 {
@@ -209,7 +215,7 @@ void sr_device_probe_name(struct sr_device *device, int probenum,
        p->name = g_strdup(name);
 }
 
-/* TODO: return SIGROK_ERR if probenum not found */
+/* TODO: return SR_ERR if probenum not found */
 void sr_device_trigger_clear(struct sr_device *device)
 {
        struct sr_probe *p;
@@ -227,7 +233,7 @@ void sr_device_trigger_clear(struct sr_device *device)
        }
 }
 
-/* TODO: return SIGROK_ERR if probenum not found */
+/* TODO: return SR_ERR if probenum not found */
 void sr_device_trigger_set(struct sr_device *device, int probenum,
                           const char *trigger)
 {