Skip to content

Commit bc48e17

Browse files
Merge remote-tracking branch 'libusb/master'
2 parents 22df620 + f1af64b commit bc48e17

File tree

3 files changed

+22
-3
lines changed

3 files changed

+22
-3
lines changed

ChangeLog

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
1-
For detailed information about the changes below, please see the git log
2-
or visit: http://log.libusb.info
1+
For detailed information about the changes below, please see the git log.
2+
3+
202?-??-??: v1.0.30
4+
* Add hotplug support on Microsoft Windows
5+
* Add RAW_IO support in WinUSB backend
6+
* Work around a macOS 26 Tahoe compatibility breakage due to Apple changing kUSBHostPortPropertyPortNumber
7+
* Add new API libusb_get_device_string() to access device strings without opening the device
8+
* Add new API libusb_get_session_data() which returns the OS-specific handle
9+
* On Android, fix intermittent failures in get_usbfs_fd()
10+
* On Windows, fix bus number assignment for root hub device, preventing duplicate bus number assignments
11+
* Fix compilation with Microsoft Visual Studio 2026
12+
* Fix various compiler warnings, improved tests and examples
313

414
2025-06-01: v1.0.29
515
* Fix regression on macOS leading to timeouts in enumeration

libusb/os/darwin_usb.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1582,6 +1582,10 @@ static int darwin_open (struct libusb_device_handle *dev_handle) {
15821582
IOReturn kresult;
15831583

15841584
if (0 == dpriv->open_count) {
1585+
if (!dpriv->device) {
1586+
usbi_err(HANDLE_CTX(dev_handle), "device interface is NULL, cannot open");
1587+
return LIBUSB_ERROR_NO_DEVICE;
1588+
}
15851589
/* try to open the device */
15861590
kresult = (*dpriv->device)->USBDeviceOpenSeize (dpriv->device);
15871591
if (kresult != kIOReturnSuccess) {
@@ -2139,6 +2143,11 @@ static int darwin_reenumerate_device (struct libusb_device_handle *dev_handle, b
21392143

21402144
struct libusb_context *ctx = HANDLE_CTX (dev_handle);
21412145

2146+
if (!dpriv->device) {
2147+
usbi_warn(ctx, "darwin_reenumerate_device: device interface is NULL");
2148+
return LIBUSB_ERROR_NO_DEVICE;
2149+
}
2150+
21422151
if (dpriv->in_reenumerate) {
21432152
/* ack, two (or more) threads are trying to reset the device! abort! */
21442153
return LIBUSB_ERROR_NOT_FOUND;

libusb/version_nano.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
#define LIBUSB_NANO 11991
1+
#define LIBUSB_NANO 11993

0 commit comments

Comments
 (0)