From 96f5188ff43602868c3ecbd850af5ab635d230bf Mon Sep 17 00:00:00 2001 From: Eunhye Choi Date: Wed, 20 Mar 2024 15:37:41 +0900 Subject: [PATCH] [0.6.275] fix mem leak Change-Id: I4dfea6108bbd4c22964969d21bdea1a89c7321ce --- packaging/libmm-player.spec | 2 +- src/mm_player_gst.c | 1 + src/mm_player_priv.c | 8 +++++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index b0f95a4..3c54fab 100644 --- a/packaging/libmm-player.spec +++ b/packaging/libmm-player.spec @@ -1,6 +1,6 @@ Name: libmm-player Summary: Multimedia Framework Player Library -Version: 0.6.274 +Version: 0.6.275 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_player_gst.c b/src/mm_player_gst.c index e99c314..b873d71 100644 --- a/src/mm_player_gst.c +++ b/src/mm_player_gst.c @@ -3056,6 +3056,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(); diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index d2950bc..2831a44 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -7782,16 +7782,16 @@ _mmplayer_gst_element_added(GstElement *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); @@ -7799,6 +7799,8 @@ _mmplayer_gst_element_added(GstElement *bin, GstElement *element, gpointer data) } } } + if (caps) + gst_caps_unref(caps); gst_object_unref(GST_OBJECT(srcpad)); } } -- 2.34.1