X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fvictor-dmm%2Fapi.c;h=ae0d2a76723c177d6a56e55675af27a110eb70b0;hb=b99457f09c90ce7fbb0de1793088dd53a59a0d07;hp=a389b0794799932f62ee0aeb803ff286b603faa0;hpb=d4abb463a749cd3d614e98c7fe7f5d28ad69475d;p=libsigrok.git diff --git a/hardware/victor-dmm/api.c b/hardware/victor-dmm/api.c index a389b079..ae0d2a76 100644 --- a/hardware/victor-dmm/api.c +++ b/hardware/victor-dmm/api.c @@ -194,8 +194,9 @@ static int hw_dev_open(struct sr_dev_inst *sdi) /* The device reports as HID class, so the kernel would have * claimed it. */ if (libusb_kernel_driver_active(devc->usb->devhdl, 0) == 1) { - if (libusb_detach_kernel_driver(devc->usb->devhdl, 0) < 0) { - sr_err("Failed to detach kernel driver."); + if ((ret = libusb_detach_kernel_driver(devc->usb->devhdl, 0)) < 0) { + sr_err("Failed to detach kernel driver: %s.", + libusb_error_name(ret)); return SR_ERR; } } @@ -339,15 +340,15 @@ static void receive_transfer(struct libusb_transfer *transfer) if ((ret = libusb_submit_transfer(transfer) != 0)) { sr_err("Unable to resubmit transfer: %s.", libusb_error_name(ret)); - libusb_free_transfer(transfer); g_free(transfer->buffer); + libusb_free_transfer(transfer); hw_dev_acquisition_stop(sdi, sdi); } } else { /* This was the last transfer we're going to receive, so * clean up now. */ - libusb_free_transfer(transfer); g_free(transfer->buffer); + libusb_free_transfer(transfer); } }