diff options
author | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2010-01-29 13:56:05 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2010-01-30 15:41:32 +0000 |
commit | 16601b09fe8704ba0f80465fe788a36d17caff91 (patch) | |
tree | 99bdc330fa25f22b8c891b57198a573382354d31 | |
parent | 74ccf8d7b9a83e4171d1743a97897ba69d42111e (diff) |
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.
-rw-r--r-- | gst/playback/gstplaybin2.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gst/playback/gstplaybin2.c b/gst/playback/gstplaybin2.c index 10b477b6..c143c512 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; } |