ALSA: hdsp: Fix wrong boolean ctl value accesses
commit eab3c4db193f5fcccf70e884de9a922ca2c63d80 upstream. snd-hdsp driver accesses enum item values (int) instead of boolean values (long) wrongly for some ctl elements. This patch fixes them. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
7483d67fba
commit
eb390c3058
1 changed files with 2 additions and 2 deletions
|
@ -2879,7 +2879,7 @@ static int snd_hdsp_get_dds_offset(struct snd_kcontrol *kcontrol, struct snd_ctl
|
||||||
{
|
{
|
||||||
struct hdsp *hdsp = snd_kcontrol_chip(kcontrol);
|
struct hdsp *hdsp = snd_kcontrol_chip(kcontrol);
|
||||||
|
|
||||||
ucontrol->value.enumerated.item[0] = hdsp_dds_offset(hdsp);
|
ucontrol->value.integer.value[0] = hdsp_dds_offset(hdsp);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2891,7 +2891,7 @@ static int snd_hdsp_put_dds_offset(struct snd_kcontrol *kcontrol, struct snd_ctl
|
||||||
|
|
||||||
if (!snd_hdsp_use_is_exclusive(hdsp))
|
if (!snd_hdsp_use_is_exclusive(hdsp))
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
val = ucontrol->value.enumerated.item[0];
|
val = ucontrol->value.integer.value[0];
|
||||||
spin_lock_irq(&hdsp->lock);
|
spin_lock_irq(&hdsp->lock);
|
||||||
if (val != hdsp_dds_offset(hdsp))
|
if (val != hdsp_dds_offset(hdsp))
|
||||||
change = (hdsp_set_dds_offset(hdsp, val) == 0) ? 1 : 0;
|
change = (hdsp_set_dds_offset(hdsp, val) == 0) ? 1 : 0;
|
||||||
|
|
Loading…
Add table
Reference in a new issue