From 16601b09fe8704ba0f80465fe788a36d17caff91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Fri, 29 Jan 2010 13:56:05 +0000 Subject: [PATCH] playbin2: when no uri is set, post an error message When no uri is set, don't just return STATE_CHANGE_FAILURE from the state change function, but actually post an error message. --- gst/playback/gstplaybin2.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gst/playback/gstplaybin2.c b/gst/playback/gstplaybin2.c index 10b477b610..c143c51203 100644 --- a/gst/playback/gstplaybin2.c +++ b/gst/playback/gstplaybin2.c @@ -2473,8 +2473,8 @@ _playsink_sink_event_probe_cb (GstPad * pad, GstEvent * event, if (format != GST_FORMAT_TIME) data->group->selector[data->type].group_start_accum = GST_CLOCK_TIME_NONE; - else if (!GST_CLOCK_TIME_IS_VALID (data->group->selector[data-> - type].group_start_accum)) + else if (!GST_CLOCK_TIME_IS_VALID (data->group->selector[data->type]. + group_start_accum)) data->group->selector[data->type].group_start_accum = segment->accum; } else if (GST_EVENT_TYPE (event) == GST_EVENT_FLUSH_STOP) { gst_segment_init (&data->playbin->segments[index], GST_FORMAT_UNDEFINED); @@ -3484,6 +3484,8 @@ setup_next_source (GstPlayBin * playbin, GstState target) no_next_group: { GST_DEBUG_OBJECT (playbin, "no next group"); + if (target == GST_STATE_READY && new_group && new_group->uri == NULL) + GST_ELEMENT_ERROR (playbin, RESOURCE, NOT_FOUND, ("No URI set"), (NULL)); GST_PLAY_BIN_UNLOCK (playbin); return FALSE; }