From 6b717600b578390cb7a88fc86bc94c5a1def8659 Mon Sep 17 00:00:00 2001 From: Nate Bogdanowicz Date: Sat, 2 Feb 2013 11:55:52 -0800 Subject: [PATCH] gstpipeline: fix failed assertion caused by seeking pipeline with NULL clock Under certain GST_STATE_CHANGED_PAUSED_TO_PLAYING transitions, a pipeline with a NULL clock will fail an assertion due to an unchecked call to gst_object_ref(). This is fixed by simply adding a check and only ref-ing if the clock is not NULL. https://bugzilla.gnome.org/show_bug.cgi?id=693065 --- gst/gstpipeline.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gst/gstpipeline.c b/gst/gstpipeline.c index 6a603e4d00..51226a42e7 100644 --- a/gst/gstpipeline.c +++ b/gst/gstpipeline.c @@ -405,7 +405,10 @@ gst_pipeline_change_state (GstElement * element, GstStateChange transition) } else { GST_DEBUG_OBJECT (pipeline, "Don't need to update clock, using old clock."); - clock = gst_object_ref (cur_clock); + /* only try to ref if cur_clock is not NULL */ + if (cur_clock) + gst_object_ref (cur_clock); + clock = cur_clock; } if (clock) {