Эх сурвалжийг харах

HID: hid-picolcd: Fix memory leak in picolcd_debug_out_report()

We have a memory leak in drivers/hid/hid-picolcd.c::picolcd_debug_out_report()
in an error path..  We are not always freeing the memory allocated to
'buff' - this patch makes sure we always kfree() what we allocate with
kmalloc() when it is no longer needed.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Jesper Juhl 14 жил өмнө
parent
commit
0fbf8ed976

+ 1 - 0
drivers/hid/hid-picolcd.c

@@ -1867,6 +1867,7 @@ static void picolcd_debug_out_report(struct picolcd_data *data,
 			report->id, raw_size);
 			report->id, raw_size);
 	hid_debug_event(hdev, buff);
 	hid_debug_event(hdev, buff);
 	if (raw_size + 5 > sizeof(raw_data)) {
 	if (raw_size + 5 > sizeof(raw_data)) {
+		kfree(buff);
 		hid_debug_event(hdev, " TOO BIG\n");
 		hid_debug_event(hdev, " TOO BIG\n");
 		return;
 		return;
 	} else {
 	} else {