[Bug 781958] harness: Abort when failed to construct the specified pipeline

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sun Apr 30 03:41:09 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=781958

--- Comment #1 from Yasushi SHOJI <yashi at atmark-techno.com> ---
Created attachment 350752
  --> https://bugzilla.gnome.org/attachment.cgi?id=350752&action=edit
harness: Abort when failed to construct the specified pipeline

Even though gst_harness_new_parse() doesn't find the specified
element, it returns without any error.  Then a succeeding call to
gst_harness_set_sink_caps_str() causes an error like this:

    Unexpected critical/warning: gst_pad_push_event: assertion 'GST_IS_PAD
(pad)' failed

This is a bit cryptic and doesn't give users any clue what was going
on.

gst_harness_new_parse() calls gst_harness_add_parse() with a newly
created empty harness and a pipeline description string, but
gst_harness_add_parse() does not have a way to propagate the error
back to the caller.  Since the function, gst_harness_add_parse(), is a
public API, it's not a good idea to change its signature.  This patch,
instead, makes the function to g_error() when it finds any error.
With this change the same error prints:

    ** (myelement-test:25345): ERROR **: Unable to create pipeline 'bin.(
myelement )': no element "myelement"

The current implementation of gst_parse_launch_full() doesn't return
partially constructed pipeline when GST_PARSE_FLAG_FATAL_ERRORS is
specified, however, this patch also adds a check for it.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list