From: Wim Taymans Date: Fri, 11 Dec 2009 15:26:00 +0000 (+0100) Subject: bin: never skip a state change to PLAYING X-Git-Tag: RELEASE-0.10.26~100 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f44d8c31de98a1521be1092f163a987eff0fd799;p=platform%2Fupstream%2Fgstreamer.git bin: never skip a state change to PLAYING Never skip the state change to playing, even if the element is already in the right state. We need this because we also distribute the base_time while doing the state change and skipping this step would leave some elements without a new base_time. Fixes #600313 --- diff --git a/gst/gstbin.c b/gst/gstbin.c index cef35b9..039aca1 100644 --- a/gst/gstbin.c +++ b/gst/gstbin.c @@ -2073,7 +2073,7 @@ gst_bin_element_set_state (GstBin * bin, GstElement * element, /* Try not to change the state of elements that are already in the state we're * going to */ - if (!(child_pending != GST_STATE_VOID_PENDING || + if (!(next == GST_STATE_PLAYING || child_pending != GST_STATE_VOID_PENDING || (child_pending == GST_STATE_VOID_PENDING && ((pending > child_current && next > child_current) || (pending < child_current && next < child_current)))))