From a876898f35bc60218afb368ebcf0b93a79e32617 Mon Sep 17 00:00:00 2001 From: Tim-Philipp Müller Date: Thu, 23 Mar 2006 21:28:06 +0000 Subject: More state change function fixes. Original commit message from CVS: * ext/speex/gstspeexdec.c: (speex_dec_change_state): * gst/interleave/deinterleave.c: (deinterleave_change_state): * gst/interleave/interleave.c: (interleave_change_state): * gst/wavenc/gstwavenc.c: (gst_wavenc_change_state): More state change function fixes. --- ext/speex/gstspeexdec.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'ext/speex') diff --git a/ext/speex/gstspeexdec.c b/ext/speex/gstspeexdec.c index 035e8b77..da53dd98 100644 --- a/ext/speex/gstspeexdec.c +++ b/ext/speex/gstspeexdec.c @@ -574,15 +574,22 @@ gst_speexdec_set_property (GObject * object, guint prop_id, static GstStateChangeReturn speex_dec_change_state (GstElement * element, GstStateChange transition) { + GstStateChangeReturn ret; GstSpeexDec *vd = GST_SPEEXDEC (element); switch (transition) { case GST_STATE_CHANGE_NULL_TO_READY: - break; case GST_STATE_CHANGE_READY_TO_PAUSED: - break; case GST_STATE_CHANGE_PAUSED_TO_PLAYING: + default: break; + } + + ret = parent_class->change_state (element, transition); + if (ret != GST_STATE_CHANGE_SUCCESS) + return ret; + + switch (transition) { case GST_STATE_CHANGE_PLAYING_TO_PAUSED: break; case GST_STATE_CHANGE_PAUSED_TO_READY: @@ -595,5 +602,5 @@ speex_dec_change_state (GstElement * element, GstStateChange transition) break; } - return parent_class->change_state (element, transition); + return ret; } -- cgit