From a2cd477e527ce5dd9bc8e00cc6e37a1b2fa5ff9c Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Mon, 6 Jun 2011 18:15:19 +0100 Subject: [PATCH] --- yaml --- r: 257497 b: refs/heads/master c: 171ec6b0897422099438a9c66546380d0fa2ff44 h: refs/heads/master i: 257495: 1af46cd6851a829e9edc47a498b722c62a2ac150 v: v3 --- [refs] | 2 +- trunk/sound/soc/soc-dapm.c | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index beed0bb54be5..fb95cf8d1e24 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4113e443161f4fd3b33e8015a1edc190e2296790 +refs/heads/master: 171ec6b0897422099438a9c66546380d0fa2ff44 diff --git a/trunk/sound/soc/soc-dapm.c b/trunk/sound/soc/soc-dapm.c index 4452b571c1b8..d989dd71e3ac 100644 --- a/trunk/sound/soc/soc-dapm.c +++ b/trunk/sound/soc/soc-dapm.c @@ -143,17 +143,19 @@ static int snd_soc_dapm_set_bias_level(struct snd_soc_dapm_context *dapm, if (card && card->set_bias_level) ret = card->set_bias_level(card, level); - if (ret == 0) { - if (dapm->codec && dapm->codec->driver->set_bias_level) - ret = dapm->codec->driver->set_bias_level(dapm->codec, level); - else - dapm->bias_level = level; - } - if (ret == 0) { - if (card && card->set_bias_level_post) - ret = card->set_bias_level_post(card, level); - } + if (ret != 0) + goto out; + + if (dapm->codec && dapm->codec->driver->set_bias_level) + ret = dapm->codec->driver->set_bias_level(dapm->codec, level); + else + dapm->bias_level = level; + if (ret != 0) + goto out; + if (card && card->set_bias_level_post) + ret = card->set_bias_level_post(card, level); +out: trace_snd_soc_bias_level_done(card, level); return ret;