summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2010-08-27 19:00:38 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2010-09-21 12:26:36 +0200
commit2aea5901531bf64386f5929cb66210b23ab29102 (patch)
tree0139a95c24f0a31fab4fbb8366c35d6c4470cac4 /ext
parente0694abd0a9cc5d1a4f145c6ee305d950e39e0dd (diff)
timidity: Don't post an error message on the bus for UNEXPECTED
Also don't use GST_FLOW_IS_FATAL()
Diffstat (limited to 'ext')
-rw-r--r--ext/timidity/gsttimidity.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/timidity/gsttimidity.c b/ext/timidity/gsttimidity.c
index c0fa519e5..997b0b20b 100644
--- a/ext/timidity/gsttimidity.c
+++ b/ext/timidity/gsttimidity.c
@@ -714,7 +714,9 @@ gst_timidity_loop (GstPad * sinkpad)
gst_buffer_set_caps (out, timidity->out_caps);
ret = gst_pad_push (timidity->srcpad, out);
- if (GST_FLOW_IS_FATAL (ret) || ret == GST_FLOW_NOT_LINKED)
+ if (ret == GST_FLOW_UNEXPECTED)
+ goto eos;
+ else if (ret < GST_FLOW_UNEXPECTED || ret == GST_FLOW_NOT_LINKED)
goto error;
return;
@@ -725,6 +727,11 @@ paused:
gst_pad_pause_task (timidity->sinkpad);
return;
}
+eos:
+ {
+ gst_pad_push_event (timidity->srcpad, gst_event_new_eos ());
+ goto paused;
+ }
error:
{
GST_ELEMENT_ERROR (timidity, STREAM, FAILED,