diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2015-12-16 17:07:54 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2015-12-16 17:09:25 +0100 |
commit | 60bad4815db966a8e4f69e333203a995e38e0159 (patch) | |
tree | 4540ec748afe19cd92b31d116a2e5f70b6bed39d /gst | |
parent | 29cfb9a6d715e310bbdf657ae267a6d86ec26dc0 (diff) |
Revert "decodebin2: fix deadlock on chain shutdown"
This reverts commit 77dc09c3a9a5e5e371e189f39b5557db440a8dc9.
It can cause the FLUSH_START/STOP events to go to the sink elements, which
then causes state changes and various other problems. We shouldn't really
flush downstream here, the idea is to do *draining*.
Apart from that the testcase for the original bug here works without this
commit now.
Diffstat (limited to 'gst')
-rw-r--r-- | gst/playback/gstdecodebin2.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c index d402527ac..966884936 100644 --- a/gst/playback/gstdecodebin2.c +++ b/gst/playback/gstdecodebin2.c @@ -3432,10 +3432,8 @@ gst_decode_chain_free_internal (GstDecodeChain * chain, gboolean hide) if (chain->endpad) { if (chain->endpad->exposed) { - GstPad *endpad = GST_PAD_CAST (chain->endpad); - gst_pad_push_event (endpad, gst_event_new_flush_start ()); - gst_pad_push_event (endpad, gst_event_new_flush_stop (FALSE)); - gst_element_remove_pad (GST_ELEMENT_CAST (chain->dbin), endpad); + gst_element_remove_pad (GST_ELEMENT_CAST (chain->dbin), + GST_PAD_CAST (chain->endpad)); } decode_pad_set_target (chain->endpad, NULL); |