summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2015-10-28 18:04:46 +0200
committerSebastian Dröge <sebastian@centricular.com>2015-10-29 11:08:26 +0200
commitc47e49e1e3f2697b0611d6919f53d4a8b2399043 (patch)
tree153cca1c5af794bf6e72e2e027e9f32e63e5e522
parent1493f4a334f45446b3e81646b7db02c17afc2064 (diff)
pad: Unblock blocking pad probes when receiving FLUSH_START in send_event() too
Without this, flushing might not unblock the streaming thread and cause deadlocks. https://bugzilla.gnome.org/show_bug.cgi?id=757257
-rw-r--r--gst/gstpad.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gst/gstpad.c b/gst/gstpad.c
index f5630dab0..80bee257c 100644
--- a/gst/gstpad.c
+++ b/gst/gstpad.c
@@ -5407,6 +5407,8 @@ gst_pad_send_event_unchecked (GstPad * pad, GstEvent * event,
GST_PAD_SET_FLUSHING (pad);
GST_CAT_DEBUG_OBJECT (GST_CAT_EVENT, pad, "set flush flag");
+ GST_PAD_BLOCK_BROADCAST (pad);
+ type |= GST_PAD_PROBE_TYPE_EVENT_FLUSH;
break;
case GST_EVENT_FLUSH_STOP:
/* we can't accept flush-stop on inactive pads else the flushing flag