v4l2object: Fix a gvalue leak on error
authorNicolas Dufresne <nicolas.dufresne@collabora.com>
Wed, 18 Sep 2024 17:14:32 +0000 (13:14 -0400)
committerNicolas Dufresne <nicolas@ndufresne.ca>
Tue, 24 Sep 2024 20:19:12 +0000 (20:19 +0000)
In case we failed enumerating the supported interlacing mode, we leaked the
gvalue.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

subprojects/gst-plugins-good/sys/v4l2/gstv4l2object.c

index 9b9db4165224c0e0ff29172d9c8afc75da3f4d6b..472a24ef552fddc8f19162b337c0f1f66591835c 100644 (file)
@@ -2378,9 +2378,11 @@ gst_v4l2_object_add_interlace_mode (GstV4l2Object * v4l2object,
   if (gst_v4l2src_value_simplify (&interlace_formats)
       || gst_value_list_get_size (&interlace_formats) > 0)
     gst_structure_take_value (s, "interlace-mode", &interlace_formats);
-  else
+  else {
     GST_WARNING_OBJECT (v4l2object->dbg_obj,
         "Failed to determine interlace mode");
+    g_value_unset (&interlace_formats);
+  }
 
   return;
 }