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

Commit 9857edfd authored by Greg Thelen's avatar Greg Thelen Committed by Takashi Iwai
Browse files

ALSA: hda: check make_exec_verb() return value



If given a -1 cmd parameter then make_exec_verb() returns -1 without
setting the res output value.

Prior to this change snd_hda_codec_read() assumed that make_exec_verb()
unconditionally set res regardless of the cmd value.

This change explicitly checks the make_exec_verb() return value before
consuming the potentially unset res value.

Signed-off-by: default avatarGreg Thelen <gthelen@google.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 5ab775c7
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -243,7 +243,8 @@ unsigned int snd_hda_codec_read(struct hda_codec *codec, hda_nid_t nid,
{
{
	unsigned cmd = make_codec_cmd(codec, nid, direct, verb, parm);
	unsigned cmd = make_codec_cmd(codec, nid, direct, verb, parm);
	unsigned int res;
	unsigned int res;
	codec_exec_verb(codec, cmd, &res);
	if (codec_exec_verb(codec, cmd, &res))
		return -1;
	return res;
	return res;
}
}
EXPORT_SYMBOL_HDA(snd_hda_codec_read);
EXPORT_SYMBOL_HDA(snd_hda_codec_read);