]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: i2c: ov2740: Free control handler on error path
authorSakari Ailus <sakari.ailus@linux.intel.com>
Fri, 10 Jan 2025 07:33:33 +0000 (09:33 +0200)
committerHans Verkuil <hverkuil@xs4all.nl>
Sat, 15 Feb 2025 14:22:46 +0000 (15:22 +0100)
The control handler wasn't freed if v4l2_fwnode_device_parse() failed. Do
that now.

Co-developed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/i2c/ov2740.c

index 9a5d118b87b0180f0813569b9f4cb35f25a4c58a..04e93618f408a715c436772d022121eda805fa58 100644 (file)
@@ -828,8 +828,10 @@ static int ov2740_init_controls(struct ov2740 *ov2740)
                                     0, 0, ov2740_test_pattern_menu);
 
        ret = v4l2_fwnode_device_parse(&client->dev, &props);
-       if (ret)
+       if (ret) {
+               v4l2_ctrl_handler_free(ctrl_hdlr);
                return ret;
+       }
 
        v4l2_ctrl_new_fwnode_properties(ctrl_hdlr, &ov2740_ctrl_ops, &props);