return ret;
}
-extern struct sr_dev_driver *sr_driver_list_start;
-
/**
* Initialize libsigrok.
*
{
int ret = SR_ERR;
struct sr_context *context;
- struct sr_dev_driver **drivers;
- GArray *array;
#ifdef _WIN32
WSADATA wsadata;
#endif
context = g_malloc0(sizeof(struct sr_context));
- /* Generate ctx->driver_list at runtime. */
- array = g_array_new(TRUE, FALSE, sizeof(struct sr_dev_driver *));
- for (drivers = (&sr_driver_list_start) + 1; *drivers; drivers++)
- g_array_append_val(array, *drivers);
- context->driver_list = (struct sr_dev_driver **)array->data;
- g_array_free(array, FALSE);
+ sr_drivers_init(context);
if (sanity_check_all_drivers(context) < 0) {
sr_err("Internal driver error(s), aborting.");