}
sr_spew("Initializing driver '%s'.", driver->name);
- if ((ret = driver->init(ctx)) < 0)
+ if ((ret = driver->init(driver, ctx)) < 0)
sr_err("Failed to initialize the driver: %d.", ret);
return ret;
return NULL;
}
- l = driver->scan(options);
+ l = driver->scan(driver, options);
sr_spew("Scan of '%s' found %d devices.", driver->name,
g_slist_length(l));
drivers = sr_driver_list();
for (i = 0; drivers[i]; i++) {
if (drivers[i]->cleanup)
- drivers[i]->cleanup();
+ drivers[i]->cleanup(drivers[i]);
+ drivers[i]->priv = NULL;
}
}