From: Sebastian Dröge Date: Mon, 15 Feb 2010 07:26:05 +0000 (+0100) Subject: decodebin2: First post a missing-plugin message, then emit the unkown-type signal X-Git-Tag: 1.19.3~511^2~8757 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cdf53e5e8612d5f2acdaf04ded80497cde894164;p=platform%2Fupstream%2Fgstreamer.git decodebin2: First post a missing-plugin message, then emit the unkown-type signal This makes sure that there *always* is a missing plugin message in the bus before any errors or warning messages. --- diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c index a518d6d..d05c698 100644 --- a/gst/playback/gstdecodebin2.c +++ b/gst/playback/gstdecodebin2.c @@ -1367,9 +1367,7 @@ expose_pad: } unknown_type: { - GST_LOG_OBJECT (pad, "Unknown type, firing signal"); - g_signal_emit (G_OBJECT (dbin), - gst_decode_bin_signals[SIGNAL_UNKNOWN_TYPE], 0, pad, caps); + GST_LOG_OBJECT (pad, "Unknown type, posting message and firing signal"); chain->deadend = TRUE; chain->endcaps = gst_caps_ref (caps); @@ -1377,6 +1375,9 @@ unknown_type: gst_element_post_message (GST_ELEMENT_CAST (dbin), gst_missing_decoder_message_new (GST_ELEMENT_CAST (dbin), caps)); + g_signal_emit (G_OBJECT (dbin), + gst_decode_bin_signals[SIGNAL_UNKNOWN_TYPE], 0, pad, caps); + /* Try to expose anything */ EXPOSE_LOCK (dbin); if (gst_decode_chain_is_complete (dbin->decode_chain)) {