summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRajat Verma <rajat.verma@st.com>2015-09-29 10:12:28 +0530
committerSebastian Dröge <sebastian@centricular.com>2015-10-05 12:18:40 +0100
commitf234e70f0ae39cca0d991bf53a22fc26a8430086 (patch)
treec6eae85dee65186d36147c6866c04d089a62997f
parentfd8d3af85c7414eda6d12c056d36929e842a1ca5 (diff)
downloadgstreamer-plugins-base-f234e70f0ae39cca0d991bf53a22fc26a8430086.tar.gz
decodebin: free hidden groups at time of switching groups
hidden groups should be freed at time of switching groups to avoid memory use from balloning up. https://bugzilla.gnome.org/show_bug.cgi?id=755770
-rw-r--r--gst/playback/gstdecodebin2.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index 85a2ed188..71336b011 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -4061,7 +4061,6 @@ drain_and_switch_chains (GstDecodeChain * chain, GstDecodePad * drainpad,
if (chain->next_groups) {
/* Switch to next group */
GST_DEBUG_OBJECT (dbin, "Hiding current group %p", chain->active_group);
- gst_decode_chain_start_free_hidden_groups_thread (chain);
gst_decode_group_hide (chain->active_group);
chain->old_groups =
g_list_prepend (chain->old_groups, chain->active_group);
@@ -4070,6 +4069,7 @@ drain_and_switch_chains (GstDecodeChain * chain, GstDecodePad * drainpad,
chain->active_group = chain->next_groups->data;
chain->next_groups =
g_list_delete_link (chain->next_groups, chain->next_groups);
+ gst_decode_chain_start_free_hidden_groups_thread (chain);
*switched = TRUE;
chain->drained = FALSE;
} else {