summaryrefslogtreecommitdiffstats
path: root/gst/wavenc/gstwavenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/wavenc/gstwavenc.c')
-rw-r--r--gst/wavenc/gstwavenc.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/gst/wavenc/gstwavenc.c b/gst/wavenc/gstwavenc.c
index f392b6ee..6b2fb973 100644
--- a/gst/wavenc/gstwavenc.c
+++ b/gst/wavenc/gstwavenc.c
@@ -126,8 +126,13 @@ gst_wavenc_get_type (void)
static GstStateChangeReturn
gst_wavenc_change_state (GstElement * element, GstStateChange transition)
{
+ GstStateChangeReturn ret = GST_STATE_CHANGE_SUCCESS;
GstWavEnc *wavenc = GST_WAVENC (element);
+ ret = parent_class->change_state (element, transition);
+ if (ret != GST_STATE_CHANGE_SUCCESS)
+ return ret;
+
switch (transition) {
case GST_STATE_CHANGE_PAUSED_TO_READY:
wavenc->setup = FALSE;
@@ -137,11 +142,7 @@ gst_wavenc_change_state (GstElement * element, GstStateChange transition)
break;
}
- if (parent_class->change_state) {
- return parent_class->change_state (element, transition);
- }
-
- return GST_STATE_CHANGE_SUCCESS;
+ return ret;
}
static void