[ALSA] emu10k1 - Check value ranges in ctl callbacks
Check value ranges in ctl callbacks properly. This fixes the unexpected crash due to wrong value assignment. Also, remove invalid comments in the last patch. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
committed by
Mercurial server
parent
74415a3676
commit
aa299d01f1
@@ -742,6 +742,8 @@ static int snd_p16v_capture_source_put(struct snd_kcontrol *kcontrol,
|
||||
u32 source;
|
||||
|
||||
val = ucontrol->value.enumerated.item[0] ;
|
||||
if (val > 7)
|
||||
return -EINVAL;
|
||||
change = (emu->p16v_capture_source != val);
|
||||
if (change) {
|
||||
emu->p16v_capture_source = val;
|
||||
@@ -784,6 +786,8 @@ static int snd_p16v_capture_channel_put(struct snd_kcontrol *kcontrol,
|
||||
u32 tmp;
|
||||
|
||||
val = ucontrol->value.enumerated.item[0] ;
|
||||
if (val > 3)
|
||||
return -EINVAL;
|
||||
change = (emu->p16v_capture_channel != val);
|
||||
if (change) {
|
||||
emu->p16v_capture_channel = val;
|
||||
|
Reference in New Issue
Block a user