summaryrefslogtreecommitdiff
path: root/ext/smoothstreaming
diff options
context:
space:
mode:
authorThiago Santos <thiago.sousa.santos@collabora.com>2013-05-17 11:37:30 -0300
committerThiago Santos <thiago.sousa.santos@collabora.com>2013-05-17 11:37:30 -0300
commit504142ea93efb5db8b133b18fdb0ff9aa6909fe2 (patch)
treed49f9625b88b57f9aaa0d1526ca37a8044fe7286 /ext/smoothstreaming
parentef66e39d0384576b06eff506dcc9f61e9e6a49fe (diff)
downloadgstreamer-plugins-bad-504142ea93efb5db8b133b18fdb0ff9aa6909fe2.tar.gz
mssdemux: fix assertions when a stream caps can't be created
Fixes two assertions related to cleanup for a pad that couldn't be exposed because the caps couldn't be identified from the Manifest Fixes #699921
Diffstat (limited to 'ext/smoothstreaming')
-rw-r--r--ext/smoothstreaming/gstmssdemux.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/ext/smoothstreaming/gstmssdemux.c b/ext/smoothstreaming/gstmssdemux.c
index 9e39d29af..1cc3a59e8 100644
--- a/ext/smoothstreaming/gstmssdemux.c
+++ b/ext/smoothstreaming/gstmssdemux.c
@@ -288,7 +288,8 @@ gst_mss_demux_stream_free (GstMssDemuxStream * stream)
gst_object_unref (stream->pad);
stream->pad = NULL;
}
- gst_caps_unref (stream->caps);
+ if (stream->caps)
+ gst_caps_unref (stream->caps);
g_free (stream);
}
@@ -905,8 +906,6 @@ gst_mss_demux_process_manifest (GstMssDemux * mssdemux)
GstMssDemuxStream *stream = iter->data;
iter = g_slist_next (iter); /* do it ourselves as we want it done in the beginning of the loop */
if (!gst_mss_demux_expose_stream (mssdemux, stream)) {
- if (stream->pad)
- gst_element_remove_pad (GST_ELEMENT_CAST (mssdemux), stream->pad);
gst_mss_demux_stream_free (stream);
mssdemux->streams = g_slist_delete_link (mssdemux->streams, current);
}