parent
8141a0325c
commit
fa69e191b2
|
@ -464,6 +464,9 @@ SR_API int sr_init(struct sr_context **ctx)
|
||||||
struct sr_context *context;
|
struct sr_context *context;
|
||||||
struct sr_dev_driver ***lists, **drivers;
|
struct sr_dev_driver ***lists, **drivers;
|
||||||
GArray *array;
|
GArray *array;
|
||||||
|
#ifdef _WIN32
|
||||||
|
WSADATA wsadata;
|
||||||
|
#endif
|
||||||
|
|
||||||
print_versions();
|
print_versions();
|
||||||
|
|
||||||
|
@ -502,6 +505,14 @@ SR_API int sr_init(struct sr_context **ctx)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
if ((ret = WSAStartup(MAKEWORD(2, 2), &wsadata)) != 0) {
|
||||||
|
sr_err("WSAStartup failed with error code %d.", ret);
|
||||||
|
ret = SR_ERR;
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_LIBUSB_1_0
|
#ifdef HAVE_LIBUSB_1_0
|
||||||
ret = libusb_init(&context->libusb_ctx);
|
ret = libusb_init(&context->libusb_ctx);
|
||||||
if (LIBUSB_SUCCESS != ret) {
|
if (LIBUSB_SUCCESS != ret) {
|
||||||
|
@ -516,7 +527,7 @@ SR_API int sr_init(struct sr_context **ctx)
|
||||||
context = NULL;
|
context = NULL;
|
||||||
ret = SR_OK;
|
ret = SR_OK;
|
||||||
|
|
||||||
#ifdef HAVE_LIBUSB_1_0
|
#if defined(HAVE_LIBUSB_1_0) || defined(_WIN32)
|
||||||
done:
|
done:
|
||||||
#endif
|
#endif
|
||||||
g_free(context);
|
g_free(context);
|
||||||
|
@ -542,6 +553,10 @@ SR_API int sr_exit(struct sr_context *ctx)
|
||||||
|
|
||||||
sr_hw_cleanup_all(ctx);
|
sr_hw_cleanup_all(ctx);
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
WSACleanup();
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_LIBUSB_1_0
|
#ifdef HAVE_LIBUSB_1_0
|
||||||
libusb_exit(ctx->libusb_ctx);
|
libusb_exit(ctx->libusb_ctx);
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue