[PATCH 2/4] igorplugusb: prevent use after free in probe error

Oliver Neukum
2022-05-12T12:39:01Z

The timer uses the URB. Free it only after the timer
has been stopped.

Signed-off-by: Oliver Neukum <oneukum@suse.com>
---
drivers/media/rc/igorplugusb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/media/rc/igorplugusb.c b/drivers/media/rc/igorplugusb.c
index b46362da8623..1afba95409ff 100644
--- a/drivers/media/rc/igorplugusb.c
+++ b/drivers/media/rc/igorplugusb.c
@@ -223,9 +223,9 @@ static int igorplugusb_probe(struct usb_interface *intf,

return 0;
fail:
- rc_free_device(ir->rc);
- usb_free_urb(ir->urb);
del_timer(&ir->timer);
+ usb_free_urb(ir->urb);
+ rc_free_device(ir->rc);
kfree(ir->buf_in);

return ret;
--
2.35.3