mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
wavparse: Don't use GST_FLOW_IS_FATAL()
This commit is contained in:
parent
d224251df4
commit
55a52262d3
1 changed files with 25 additions and 27 deletions
|
@ -2038,41 +2038,39 @@ pause:
|
|||
wav->segment_running = FALSE;
|
||||
gst_pad_pause_task (pad);
|
||||
|
||||
if (GST_FLOW_IS_FATAL (ret) || ret == GST_FLOW_NOT_LINKED) {
|
||||
if (ret == GST_FLOW_UNEXPECTED) {
|
||||
/* add pad before we perform EOS */
|
||||
if (G_UNLIKELY (wav->first)) {
|
||||
wav->first = FALSE;
|
||||
gst_wavparse_add_src_pad (wav, NULL);
|
||||
}
|
||||
if (ret == GST_FLOW_UNEXPECTED) {
|
||||
/* add pad before we perform EOS */
|
||||
if (G_UNLIKELY (wav->first)) {
|
||||
wav->first = FALSE;
|
||||
gst_wavparse_add_src_pad (wav, NULL);
|
||||
}
|
||||
|
||||
if (wav->state == GST_WAVPARSE_START)
|
||||
GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE,
|
||||
("No valid input found before end of stream"), (NULL));
|
||||
if (wav->state == GST_WAVPARSE_START)
|
||||
GST_ELEMENT_ERROR (wav, STREAM, WRONG_TYPE,
|
||||
("No valid input found before end of stream"), (NULL));
|
||||
|
||||
/* perform EOS logic */
|
||||
if (wav->segment.flags & GST_SEEK_FLAG_SEGMENT) {
|
||||
GstClockTime stop;
|
||||
/* perform EOS logic */
|
||||
if (wav->segment.flags & GST_SEEK_FLAG_SEGMENT) {
|
||||
GstClockTime stop;
|
||||
|
||||
if ((stop = wav->segment.stop) == -1)
|
||||
stop = wav->segment.duration;
|
||||
if ((stop = wav->segment.stop) == -1)
|
||||
stop = wav->segment.duration;
|
||||
|
||||
gst_element_post_message (GST_ELEMENT_CAST (wav),
|
||||
gst_message_new_segment_done (GST_OBJECT_CAST (wav),
|
||||
wav->segment.format, stop));
|
||||
} else {
|
||||
if (wav->srcpad != NULL)
|
||||
gst_pad_push_event (wav->srcpad, gst_event_new_eos ());
|
||||
}
|
||||
gst_element_post_message (GST_ELEMENT_CAST (wav),
|
||||
gst_message_new_segment_done (GST_OBJECT_CAST (wav),
|
||||
wav->segment.format, stop));
|
||||
} else {
|
||||
/* for fatal errors we post an error message, post the error
|
||||
* first so the app knows about the error first. */
|
||||
GST_ELEMENT_ERROR (wav, STREAM, FAILED,
|
||||
(_("Internal data flow error.")),
|
||||
("streaming task paused, reason %s (%d)", reason, ret));
|
||||
if (wav->srcpad != NULL)
|
||||
gst_pad_push_event (wav->srcpad, gst_event_new_eos ());
|
||||
}
|
||||
} else if (ret == GST_FLOW_NOT_LINKED || ret < GST_FLOW_UNEXPECTED) {
|
||||
/* for fatal errors we post an error message, post the error
|
||||
* first so the app knows about the error first. */
|
||||
GST_ELEMENT_ERROR (wav, STREAM, FAILED,
|
||||
(_("Internal data flow error.")),
|
||||
("streaming task paused, reason %s (%d)", reason, ret));
|
||||
if (wav->srcpad != NULL)
|
||||
gst_pad_push_event (wav->srcpad, gst_event_new_eos ());
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue