ALSA: hdsp: Fix wrong boolean ctl value accesses
snd-hdsp driver accesses enum item values (int) instead of boolean values (long) wrongly for some ctl elements. This patch fixes them. Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
c1099c3294
commit
eab3c4db19
|
@ -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…
Reference in New Issue