usbi_reallocf() will leak memory if passed pointer has members to free.
Change-Id: I183dce6067905c92a1cf373e67902244c52e9fed
Signed-off-by: lokilee73 <changjoo.lee@samsung.com>
while (size >= INTERFACE_DESC_LENGTH) {
struct libusb_interface_descriptor *altsetting =
(struct libusb_interface_descriptor *) usb_interface->altsetting;
- altsetting = usbi_reallocf(altsetting,
+ /* can't use usbi_realloc() as we need to free libusb_interface_descriptor members - see clear_interface() */
+ altsetting = realloc(altsetting,
sizeof(struct libusb_interface_descriptor) *
(usb_interface->num_altsetting + 1));
if (!altsetting) {