In an unlikely case of failure in media_device_register(), releaseHi,
resources and return the erroneous value. Otherwise, possible issues
with registering the device will continue to be ignored.
Found by Linux Verification Center (linuxtesting.org) with static
analysis tool SVACE.
Fixes: 37ecc7b1278f ("[media] em28xx: add media controller support")
Signed-off-by: Nikita Zhandarovich <n.zhandarovich@xxxxxxxxxx>
---
drivers/media/usb/em28xx/em28xx-cards.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c
index 4d037c92af7c..dae731dfc569 100644
--- a/drivers/media/usb/em28xx/em28xx-cards.c
+++ b/drivers/media/usb/em28xx/em28xx-cards.c
@@ -4095,6 +4095,8 @@ static int em28xx_usb_probe(struct usb_interface *intf,
*/
#ifdef CONFIG_MEDIA_CONTROLLER
retval = media_device_register(dev->media_dev);
+ if (retval)
+ goto err_free;
#endif
return 0;