21 lines
721 B
Diff
21 lines
721 B
Diff
|
--- src/ftdi.c.orig Wed Apr 16 16:24:30 2008
|
||
|
+++ src/ftdi.c Thu May 01 20:19:46 2008
|
||
|
@@ -358,6 +358,17 @@
|
||
|
if (usb_detach_kernel_driver_np(ftdi->usb_dev, ftdi->interface) != 0 && errno != ENODATA)
|
||
|
detach_errno = errno;
|
||
|
#endif
|
||
|
+
|
||
|
+#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
||
|
+ if (usb_set_configuration(ftdi->usb_dev, 1) != 0) {
|
||
|
+ usb_close (ftdi->usb_dev);
|
||
|
+ if (detach_errno == EPERM) {
|
||
|
+ ftdi_error_return(-8, "inappropriate permissions on device!");
|
||
|
+ } else {
|
||
|
+ ftdi_error_return(-5, "unable to set configuration");
|
||
|
+ }
|
||
|
+ }
|
||
|
+#endif
|
||
|
|
||
|
if (usb_claim_interface(ftdi->usb_dev, ftdi->interface) != 0) {
|
||
|
usb_close (ftdi->usb_dev);
|