@@ -106,6 +106,7 @@ std::unique_ptr<usb_handle> do_usb_open(const wchar_t* interface_name) {
106
106
107
107
if (nullptr == ret->adb_interface ) {
108
108
errno = GetLastError ();
109
+ DBG (" failed to open interface %S\n " , interface_name);
109
110
return nullptr ;
110
111
}
111
112
@@ -157,7 +158,7 @@ ssize_t WindowsUsbTransport::Write(const void* data, size_t len) {
157
158
unsigned count = 0 ;
158
159
int ret;
159
160
160
- DBG (" usb_write %d \n " , len);
161
+ DBG (" usb_write %zu \n " , len);
161
162
if (nullptr != handle_) {
162
163
// Perform write
163
164
while (len > 0 ) {
@@ -195,7 +196,7 @@ ssize_t WindowsUsbTransport::Read(void* data, size_t len) {
195
196
unsigned long read = 0 ;
196
197
int ret;
197
198
198
- DBG (" usb_read %d \n " , len);
199
+ DBG (" usb_read %zu \n " , len);
199
200
if (nullptr != handle_) {
200
201
while (1 ) {
201
202
int xfer = (len > MAX_USBFS_BULK_SIZE) ? MAX_USBFS_BULK_SIZE : len;
@@ -269,19 +270,22 @@ int recognized_device(usb_handle* handle, ifc_match_func callback) {
269
270
return 0 ;
270
271
271
272
// Check vendor and product id first
272
- if (!AdbGetUsbDeviceDescriptor (handle->adb_interface ,
273
- & device_desc)) {
273
+ if (!AdbGetUsbDeviceDescriptor (handle->adb_interface , &device_desc)) {
274
+ DBG ( " skipping device %x:%x \n " , device_desc. idVendor , device_desc. idProduct );
274
275
return 0 ;
275
276
}
276
277
277
278
// Then check interface properties
278
- if (!AdbGetUsbInterfaceDescriptor (handle->adb_interface ,
279
- &interf_desc)) {
279
+ if (!AdbGetUsbInterfaceDescriptor (handle->adb_interface , &interf_desc)) {
280
+ DBG (" skipping device %x:%x, failed to find interface\n " , device_desc.idVendor ,
281
+ device_desc.idProduct );
280
282
return 0 ;
281
283
}
282
284
283
285
// Must have two endpoints
284
286
if (2 != interf_desc.bNumEndpoints ) {
287
+ DBG (" skipping device %x:%x, incorrect number of endpoints\n " , device_desc.idVendor ,
288
+ device_desc.idProduct );
285
289
return 0 ;
286
290
}
287
291
@@ -305,9 +309,13 @@ int recognized_device(usb_handle* handle, ifc_match_func callback) {
305
309
info.device_path [0 ] = 0 ;
306
310
307
311
if (callback (&info) == 0 ) {
312
+ DBG (" skipping device %x:%x, not selected by callback\n " , device_desc.idVendor ,
313
+ device_desc.idProduct );
308
314
return 1 ;
309
315
}
310
316
317
+ DBG (" found device %x:%x (%s)\n " , device_desc.idVendor , device_desc.idProduct ,
318
+ info.serial_number );
311
319
return 0 ;
312
320
}
313
321
@@ -338,6 +346,7 @@ static std::unique_ptr<usb_handle> find_usb_device(ifc_match_func callback) {
338
346
}
339
347
*copy_name = ' \0 ' ;
340
348
349
+ DBG (" attempting to open interface %S\n " , next_interface->device_name );
341
350
handle = do_usb_open (next_interface->device_name );
342
351
if (NULL != handle) {
343
352
// Lets see if this interface (device) belongs to us
0 commit comments