collectpads: Get the flushing state with the object lock taken.

Fixes #590056
This commit is contained in:
Edward Hervey 2009-07-28 21:15:52 +02:00
parent c138aa8648
commit cfb22080e2

View file

@ -1159,12 +1159,15 @@ gst_collect_pads_event (GstPad * pad, GstEvent * event)
pads->eospads--;
data->abidata.ABI.eos = FALSE;
}
GST_OBJECT_UNLOCK (pads);
if (!gst_collect_pads_is_flushing (pads))
if (!gst_collect_pads_is_flushing (pads)) {
/* forward event if all pads are no longer flushing */
GST_DEBUG ("No more pads are flushing, forwarding FLUSH_STOP");
GST_OBJECT_UNLOCK (pads);
goto forward;
}
gst_event_unref (event);
GST_OBJECT_UNLOCK (pads);
goto done;
}
case GST_EVENT_EOS: