diff options
author | Christophe JAILLET <[email protected]> | 2017-09-14 22:44:24 +0200 |
---|---|---|
committer | Mark Brown <[email protected]> | 2017-09-14 14:13:03 -0700 |
commit | f3ee9096fcaf55eae37dfb58603c4dbff6f0a7c9 (patch) | |
tree | ae96a0f7df22415824b9f5de9cd8db403594c890 | |
parent | 6d5574ed5c8b1a1f31fcbdab5d26e15533c442ca (diff) |
ASoC: topology: Fix a potential memory leak in 'soc_tplg_dapm_widget_denum_create()'
If this sanity check fails, we must free the memory that has already been
allocated.
So we must go to 'err' as in the other error handling parth of this
function.
Fixes: 1a7dd6e2f192 ("ASoC: topology: Allow a widget to have multiple enum controls")
Signed-off-by: Christophe JAILLET <[email protected]>
Signed-off-by: Mark Brown <[email protected]>
-rw-r--r-- | sound/soc/soc-topology.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c index 2499b54a57e8..01a50413c66f 100644 --- a/sound/soc/soc-topology.c +++ b/sound/soc/soc-topology.c @@ -1301,7 +1301,7 @@ static struct snd_kcontrol_new *soc_tplg_dapm_widget_denum_create( /* validate kcontrol */ if (strnlen(ec->hdr.name, SNDRV_CTL_ELEM_ID_NAME_MAXLEN) == SNDRV_CTL_ELEM_ID_NAME_MAXLEN) - return NULL; + goto err; se = kzalloc(sizeof(*se), GFP_KERNEL); if (se == NULL) |