[0.6.294] fix mem leak 44/308244/2
authorEunhye Choi <eunhae1.choi@samsung.com>
Wed, 20 Mar 2024 06:37:41 +0000 (15:37 +0900)
committerEunhye Choi <eunhae1.choi@samsung.com>
Wed, 20 Mar 2024 06:42:08 +0000 (15:42 +0900)
Change-Id: I4dfea6108bbd4c22964969d21bdea1a89c7321ce

packaging/libmm-player.spec
src/mm_player_gst.c
src/mm_player_priv.c

index a3f3342..e09dafb 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-player
 Summary:    Multimedia Framework Player Library
-Version:    0.6.293
+Version:    0.6.294
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index 5b342bc..ea1bb61 100644 (file)
@@ -3098,6 +3098,7 @@ __mmplayer_gst_find_child_element(GstBin *bin, const gchar *element_name)
                ch_element = NULL;
                g_value_reset(&item);
        }
+       g_value_unset(&item);
        gst_iterator_free(iter);
 
        MMPLAYER_FLEAVE();
index 3689bed..ba9208a 100644 (file)
@@ -7816,16 +7816,16 @@ _mmplayer_gst_element_added(GstBin *bin, GstElement *element, gpointer data)
                        player->videodec_linked = 1;
 
                        if (video_parse) {
-                               GstPad *srcpad = gst_element_get_static_pad (video_parse, "src");
+                               GstPad *srcpad = gst_element_get_static_pad(video_parse, "src");
                                if (srcpad) {
                                        GstCaps *caps = NULL;
                                        GstStructure *str = NULL;
                                        const gchar *name = NULL;
                                        gboolean caps_ret = TRUE;
 
-                                       MMPLAYER_GST_GET_CAPS_INFO_FROM_PAD (srcpad, caps, str, name, caps_ret);
+                                       MMPLAYER_GST_GET_CAPS_INFO_FROM_PAD(srcpad, caps, str, name, caps_ret);
                                        if (caps_ret && str) {
-                                               const gchar *stream_format = gst_structure_get_string (str, "stream-format");
+                                               const gchar *stream_format = gst_structure_get_string(str, "stream-format");
                                                if (stream_format && g_strrstr(stream_format, "byte-stream")) {
                                                        if ((g_object_class_find_property(G_OBJECT_GET_CLASS(video_parse), "config-interval"))) {
                                                                g_object_set(G_OBJECT(video_parse), "config-interval", -1, NULL);
@@ -7833,6 +7833,8 @@ _mmplayer_gst_element_added(GstBin *bin, GstElement *element, gpointer data)
                                                        }
                                                }
                                        }
+                                       if (caps)
+                                               gst_caps_unref(caps);
                                        gst_object_unref(GST_OBJECT(srcpad));
                                }
                        }