sbc: dec: chain up to parent before downward state change
authorWim Taymans <wim.taymans@collabora.co.uk>
Mon, 29 Oct 2012 12:37:09 +0000 (12:37 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Wed, 27 Mar 2013 22:21:17 +0000 (22:21 +0000)
ext/sbc/gstsbcdec.c

index 7f61a21a4d8a5721e1809cf29bcbc7e1622bc77f..fe29259ffb88204f87ad58a66604f7db1e829c09 100644 (file)
@@ -135,6 +135,7 @@ done:
 static GstStateChangeReturn
 sbc_dec_change_state (GstElement * element, GstStateChange transition)
 {
+  GstStateChangeReturn result;
   GstSbcDec *dec = GST_SBC_DEC (element);
 
   switch (transition) {
@@ -147,7 +148,13 @@ sbc_dec_change_state (GstElement * element, GstStateChange transition)
       sbc_init (&dec->sbc, 0);
       dec->outcaps = NULL;
       break;
+    default:
+      break;
+  }
 
+  result = parent_class->change_state (element, transition);
+
+  switch (transition) {
     case GST_STATE_CHANGE_PAUSED_TO_READY:
       GST_DEBUG ("Finish subband codec");
       if (dec->buffer) {
@@ -165,7 +172,7 @@ sbc_dec_change_state (GstElement * element, GstStateChange transition)
       break;
   }
 
-  return parent_class->change_state (element, transition);
+  return result;
 }
 
 static void