}
/* driver callbacks */
+static void hw_cleanup(void);
static int hw_init(const char *deviceinfo)
{
+ hw_cleanup();
sessionfile = g_strdup(deviceinfo);
for (l = device_instances; l; l = l->next)
sr_device_instance_free(l->data);
+ g_slist_free(device_instances);
+ device_instances = NULL;
+
+ sr_session_source_remove(-1);
+
g_free(sessionfile);
}