tests/check/elements/mxfdemux.*: Make sure the main loop is already running when handling the EOS event in pull mode....

Original commit message from CVS:
* tests/check/elements/mxfdemux.c: (_sink_event):
* tests/check/elements/mxfdemux.h:
Make sure the main loop is already running when handling the EOS
event in pull mode. This works around a race condition that can
happen if the element goes into PLAYING, handles everything and
sends EOS before the main loop is started.
This commit is contained in:
Sebastian Dröge 2008-12-16 12:37:15 +00:00
parent 5587f91210
commit f6a5f4fa71
3 changed files with 2555 additions and 2542 deletions

View file

@ -1,3 +1,12 @@
2008-12-16 Sebastian Dröge <sebastian.droege@collabora.co.uk>
* tests/check/elements/mxfdemux.c: (_sink_event):
* tests/check/elements/mxfdemux.h:
Make sure the main loop is already running when handling the EOS
event in pull mode. This works around a race condition that can
happen if the element goes into PLAYING, handles everything and
sends EOS before the main loop is started.
2008-12-16 Sebastian Dröge <sebastian.droege@collabora.co.uk>
* gst/mxf/mxfaes-bwf.c: (mxf_is_aes_bwf_essence_track),

View file

@ -82,6 +82,10 @@ static gboolean
_sink_event (GstPad * pad, GstEvent * event)
{
if (GST_EVENT_TYPE (event) == GST_EVENT_EOS) {
if (loop) {
while (!g_main_loop_is_running (loop));
}
have_eos = TRUE;
if (loop)
g_main_loop_quit (loop);

File diff suppressed because it is too large Load diff