| 
      
      
      From: Dan E. <Dan...@ne...> - 2006-08-23 10:54:08
      
     | 
| Graeme Gill wrote: > Dan Ellis wrote: >=20 >> I've just spotted a problem which probably explains quite a bit of >> strange behaviour which has been seen: >>=20 >> When a device is unplugged, a subsequent call to usb_find_devices >> will free the struct usb_device, even though some other part of the >> software may have a handle open on the device, with the handle >> structure holding a pointer of the (now invalid) device. >=20 > This might explain why merely listing available USB devices corrupts > and breaks an existing Libusb-win32 USB connection running in another > process... =20 I've looked at this further, and I'm seriously doubting my initial suspicions. They were raised by colleagues who had seen heap corruption in the new code for putting children onto the virtual hub. I can't see anywhere that that the presence of the device structure in the handle structure would cause a problem. Dan. |