summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2012-10-29 12:37:09 +0000
committerTim-Philipp Müller <tim@centricular.net>2013-03-27 22:21:17 +0000
commit9581e704b67747c0460490db0c230850910872cc (patch)
tree94f56f8b6fa3ed16ffed9ba8d1425e4fb293f4ae /ext
parentc6f6cc736f73dad384843648d5667833a214f46c (diff)
downloadgstreamer-plugins-bad-9581e704b67747c0460490db0c230850910872cc.tar.gz
sbc: dec: chain up to parent before downward state change
Diffstat (limited to 'ext')
-rw-r--r--ext/sbc/gstsbcdec.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/sbc/gstsbcdec.c b/ext/sbc/gstsbcdec.c
index 7f61a21a4..fe29259ff 100644
--- a/ext/sbc/gstsbcdec.c
+++ b/ext/sbc/gstsbcdec.c
@@ -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