diff options
| author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2024-11-08 01:51:30 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-02-08 09:58:16 +0100 |
| commit | d1f8e69eec91d5a75ef079778a5d0151db2a7f22 (patch) | |
| tree | 525671f43bd603e23697cf0c3ad3299820764daa /include | |
| parent | f2013d19b7704cd723ab42664b8d9408ea8cc77c (diff) | |
| download | linux-d1f8e69eec91d5a75ef079778a5d0151db2a7f22.tar.gz linux-d1f8e69eec91d5a75ef079778a5d0151db2a7f22.tar.bz2 linux-d1f8e69eec91d5a75ef079778a5d0151db2a7f22.zip | |
media: uvcvideo: Fix double free in error path
commit c6ef3a7fa97ec823a1e1af9085cf13db9f7b3bac upstream.
If the uvc_status_init() function fails to allocate the int_urb, it will
free the dev->status pointer but doesn't reset the pointer to NULL. This
results in the kfree() call in uvc_status_cleanup() trying to
double-free the memory. Fix it by resetting the dev->status pointer to
NULL after freeing it.
Fixes: a31a4055473b ("V4L/DVB:usbvideo:don't use part of buffer for USB transfer #4")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20241107235130.31372-1-laurent.pinchart@ideasonboard.com
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed by: Ricardo Ribalda <ribalda@chromium.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
