From: blake tregre Date: Tue, 1 Nov 2011 01:56:23 +0000 (-0700) Subject: decklinksrc: handle flow return properly and provide better message X-Git-Tag: RELEASE-0.11.90~10^2~36 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e37ce96b2c2a231f82f570892607a0aeed1f4edf;p=platform%2Fupstream%2Fgst-plugins-bad.git decklinksrc: handle flow return properly and provide better message * sys/decklink/gstdecklinksrc.cpp: --- diff --git a/sys/decklink/gstdecklinksrc.cpp b/sys/decklink/gstdecklinksrc.cpp index a6c5d89..37a306c 100644 --- a/sys/decklink/gstdecklinksrc.cpp +++ b/sys/decklink/gstdecklinksrc.cpp @@ -1269,8 +1269,12 @@ gst_decklink_src_task (void *priv) gst_buffer_set_caps (buffer, decklinksrc->video_caps); ret = gst_pad_push (decklinksrc->videosrcpad, buffer); - if (ret != GST_FLOW_OK) { - GST_ELEMENT_ERROR (decklinksrc, CORE, NEGOTIATION, (NULL), (NULL)); + if (! (ret == GST_FLOW_OK || ret == GST_FLOW_NOT_LINKED || + ret == GST_FLOW_WRONG_STATE)) { + GST_ELEMENT_ERROR (decklinksrc, STREAM, FAILED, + ("Internal data stream error."), + ("stream stopped, reason %s", + gst_flow_get_name (ret))); } if (gst_pad_is_linked (decklinksrc->audiosrcpad)) { @@ -1299,8 +1303,12 @@ gst_decklink_src_task (void *priv) gst_buffer_set_caps (audio_buffer, decklinksrc->audio_caps); ret = gst_pad_push (decklinksrc->audiosrcpad, audio_buffer); - if (ret != GST_FLOW_OK) { - GST_ELEMENT_ERROR (decklinksrc, CORE, NEGOTIATION, (NULL), (NULL)); + if (! (ret == GST_FLOW_OK || ret == GST_FLOW_NOT_LINKED || + ret == GST_FLOW_WRONG_STATE)) { + GST_ELEMENT_ERROR (decklinksrc, STREAM, FAILED, + ("Internal data stream error."), + ("stream stopped, reason %s", + gst_flow_get_name (ret))); } } audio_frame->Release ();