diff mbox series

media: rc: clean the freed urb pointer to avoid double free

Message ID 20210814102939.GA66862@nilus-desk
State Accepted
Commit c9458c6f8a8f9c8b09fef0e2a4d5798ded993ef8
Headers show
Series media: rc: clean the freed urb pointer to avoid double free | expand

Commit Message

Nil Yi Aug. 14, 2021, 10:29 a.m. UTC
After freed rx_urb, we should set the second interface urb to NULL,
otherwise a double free would happen when the driver is removed
from the first interface.

Signed-off-by: Nil Yi <teroincn@163.com>
---
 drivers/media/rc/imon.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/drivers/media/rc/imon.c b/drivers/media/rc/imon.c
index 2ca4e86c7..54da6f600 100644
--- a/drivers/media/rc/imon.c
+++ b/drivers/media/rc/imon.c
@@ -2358,8 +2358,10 @@  static struct imon_context *imon_init_intf1(struct usb_interface *intf,
 touch_setup_failed:
 find_endpoint_failed:
 	usb_put_dev(ictx->usbdev_intf1);
+	ictx->usbdev_intf1 = NULL;
 	mutex_unlock(&ictx->lock);
 	usb_free_urb(rx_urb);
+	ictx->rx_urb_intf1 = NULL;
 rx_urb_alloc_failed:
 	dev_err(ictx->dev, "unable to initialize intf1, err %d\n", ret);