Add sr_usb_close().

This commit is contained in:
Bert Vermeulen 2015-08-16 20:00:26 +02:00 committed by Uwe Hermann
parent 558d438d1f
commit 67e95ed37d
2 changed files with 8 additions and 0 deletions

View File

@ -868,6 +868,7 @@ SR_PRIV int ezusb_upload_firmware(libusb_device *dev, int configuration,
#ifdef HAVE_LIBUSB_1_0
SR_PRIV GSList *sr_usb_find(libusb_context *usb_ctx, const char *conn);
SR_PRIV int sr_usb_open(libusb_context *usb_ctx, struct sr_usb_dev_inst *usb);
SR_PRIV void sr_usb_close(struct sr_usb_dev_inst *usb);
SR_PRIV int usb_source_add(struct sr_session *session, struct sr_context *ctx,
int timeout, sr_receive_data_callback cb, void *cb_data);
SR_PRIV int usb_source_remove(struct sr_session *session, struct sr_context *ctx);

View File

@ -177,6 +177,13 @@ SR_PRIV int sr_usb_open(libusb_context *usb_ctx, struct sr_usb_dev_inst *usb)
return ret;
}
SR_PRIV void sr_usb_close(struct sr_usb_dev_inst *usb)
{
libusb_close(usb->devhdl);
usb->devhdl = NULL;
sr_dbg("Closed USB device %d.%d.", usb->bus, usb->address);
}
#ifdef _WIN32
/* Thread used to run libusb_wait_for_event() and set a pollable event. */
static gpointer usb_thread(gpointer data)