The branch, master has been updated
via 77377af7cb038876829f2421dba5977718ca154f (commit)
from a9ec26b61766f495633d87ff265498bd4d277f19 (commit)
- Log -----------------------------------------------------------------
commit 77377af7cb038876829f2421dba5977718ca154f
Author: Uwe Bonnes <bon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue Jun 21 15:04:05 2011 +0200
Free the device list in ftdi_usb_find_all
This fixes the leak with examples/find_all
-----------------------------------------------------------------------
Summary of changes:
src/ftdi.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/ftdi.c b/src/ftdi.c
index 0893421..33b6a50 100644
--- a/src/ftdi.c
+++ b/src/ftdi.c
@@ -289,13 +289,13 @@ int ftdi_usb_find_all(struct ftdi_context *ftdi, struct
ftdi_device_list **devli
struct libusb_device_descriptor desc;
if (libusb_get_device_descriptor(dev, &desc) < 0)
- ftdi_error_return(-6, "libusb_get_device_descriptor() failed");
+ ftdi_error_return_free_device_list(-6,
"libusb_get_device_descriptor() failed", devs);
if (desc.idVendor == vendor && desc.idProduct == product)
{
*curdev = (struct ftdi_device_list*)malloc(sizeof(struct
ftdi_device_list));
if (!*curdev)
- ftdi_error_return(-3, "out of memory");
+ ftdi_error_return_free_device_list(-3, "out of memory", devs);
(*curdev)->next = NULL;
(*curdev)->dev = dev;
@@ -304,7 +304,7 @@ int ftdi_usb_find_all(struct ftdi_context *ftdi, struct
ftdi_device_list **devli
count++;
}
}
-
+ libusb_free_device_list(devs,1);
return count;
}
hooks/post-receive
--
port libftdi to libusb-1.0
--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|