Task #119177 - fixed.err

back to task #119177
download
Error: CPPCHECK_WARNING (CWE-401):
libusb-1.0.29/libusb/descriptor.c:1101: error[memleak]: Memory leak: _ssplus_cap
# 1099|   	if (dev_cap->bLength < LIBUSB_BT_SSPLUS_USB_DEVICE_CAPABILITY_SIZE + _ssplus_cap->numSublinkSpeedAttributes * sizeof(uint32_t)) {
# 1100|   		usbi_err(ctx, "short ssplus capability descriptor, unable to read sublinks: Not enough data");
# 1101|-> 		return LIBUSB_ERROR_IO;
# 1102|   	}
# 1103|   

Error: GCC_ANALYZER_WARNING (CWE-401):
libusb-1.0.29/libusb/descriptor.c:1118:1: warning[-Wanalyzer-malloc-leak]: leak of '_ssplus_cap'
libusb-1.0.29/libusb/descriptor.c:1053:18: enter_function: entry to 'libusb_get_ssplus_usb_device_capability_descriptor'
libusb-1.0.29/libusb/descriptor.c:1064:12: branch_false: following 'false' branch...
libusb-1.0.29/libusb/descriptor.c:1069:20: branch_false: ...to here
libusb-1.0.29/libusb/descriptor.c:1069:19: branch_false: following 'false' branch...
libusb-1.0.29/libusb/descriptor.c:1080:41: call_function: inlined call to 'ReadLittleEndian32' from 'libusb_get_ssplus_usb_device_capability_descriptor'
libusb-1.0.29/libusb/descriptor.c:1085:23: acquire_memory: allocated here
libusb-1.0.29/libusb/descriptor.c:1086:12: branch_false: following 'false' branch (when '_ssplus_cap' is non-NULL)...
libusb-1.0.29/libusb/descriptor.c:1090:9: branch_false: ...to here
libusb-1.0.29/libusb/descriptor.c:1099:12: branch_true: following 'true' branch...
libusb-1.0.29/libusb/descriptor.c:1100:17: branch_true: ...to here
libusb-1.0.29/libusb/descriptor.c:1118:1: danger: '_ssplus_cap' leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
# 1116|   	*ssplus_usb_device_cap = _ssplus_cap;
# 1117|   	return LIBUSB_SUCCESS;
# 1118|-> }
# 1119|   
# 1120|   /** \ingroup libusb_desc