Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e11f7ef authored by Colin Ian King's avatar Colin Ian King Committed by Greg Kroah-Hartman
Browse files

ASoC: rsnd: don't double free kctrl




[ Upstream commit 0ea617a298dcdc2251b4e10f83ac3f3e627b66e3 ]

On an error, snd_ctl_add already free's kctrl, so calling snd_ctl_free_one
to free it again leads to a double free error.  Fix this by removing
the extraneous snd_ctl_free_one call.

Issue found using static analysis with CoverityScan, CID 1372908

Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
Acked-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 0117c755
Loading
Loading
Loading
Loading
+1 −3
Original line number Original line Diff line number Diff line
@@ -978,10 +978,8 @@ static int __rsnd_kctrl_new(struct rsnd_mod *mod,
		return -ENOMEM;
		return -ENOMEM;


	ret = snd_ctl_add(card, kctrl);
	ret = snd_ctl_add(card, kctrl);
	if (ret < 0) {
	if (ret < 0)
		snd_ctl_free_one(kctrl);
		return ret;
		return ret;
	}


	cfg->update = update;
	cfg->update = update;
	cfg->card = card;
	cfg->card = card;