summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2017-02-21 17:54:47 -0500
committerTakashi Iwai <tiwai@suse.de>2017-02-22 01:12:23 -0500
commit89b593c30e83ee19b7e7c6c7d6092669bebf343e (patch)
tree64c4160ed7b44550cbda1e173914fde3feb137e7 /sound
parent4b49f0f7ee1f5de8ea6d1210dfebf2c86f72507f (diff)
ALSA: usb-audio: purge needless variable length array
Variable length array is used in 'snd_us16x08_meter_get()', while there is no need. It's better to purge it because variable length array has overhead for stack handling. This commit replaces the array with static length. Sparse generated below warning. sound/usb/mixer_us16x08.c:714:18: warning: Variable length array is used. Fixes: d2bb390a2081 ("ALSA: usb-audio: Tascam US-16x08 DSP mixer quirk") Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/usb/mixer_us16x08.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/usb/mixer_us16x08.c b/sound/usb/mixer_us16x08.c
index 7ac45ec372b9..73a0b9afdd70 100644
--- a/sound/usb/mixer_us16x08.c
+++ b/sound/usb/mixer_us16x08.c
@@ -711,7 +711,7 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
711 struct snd_usb_audio *chip = elem->head.mixer->chip; 711 struct snd_usb_audio *chip = elem->head.mixer->chip;
712 struct snd_us16x08_meter_store *store = elem->private_data; 712 struct snd_us16x08_meter_store *store = elem->private_data;
713 u8 meter_urb[64]; 713 u8 meter_urb[64];
714 char tmp[max(sizeof(mix_init_msg1), sizeof(mix_init_msg2))]; 714 char tmp[sizeof(mix_init_msg2)] = {0};
715 715
716 if (elem) { 716 if (elem) {
717 store = (struct snd_us16x08_meter_store *) elem->private_data; 717 store = (struct snd_us16x08_meter_store *) elem->private_data;
@@ -721,8 +721,8 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
721 721
722 switch (kcontrol->private_value) { 722 switch (kcontrol->private_value) {
723 case 0: 723 case 0:
724 memcpy(tmp, mix_init_msg1, sizeof(mix_init_msg1)); 724 snd_us16x08_send_urb(chip, (char *)mix_init_msg1,
725 snd_us16x08_send_urb(chip, tmp, 4); 725 sizeof(mix_init_msg1));
726 snd_us16x08_recv_urb(chip, meter_urb, 726 snd_us16x08_recv_urb(chip, meter_urb,
727 sizeof(meter_urb)); 727 sizeof(meter_urb));
728 kcontrol->private_value++; 728 kcontrol->private_value++;
@@ -740,7 +740,7 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
740 case 3: 740 case 3:
741 memcpy(tmp, mix_init_msg2, sizeof(mix_init_msg2)); 741 memcpy(tmp, mix_init_msg2, sizeof(mix_init_msg2));
742 tmp[2] = snd_get_meter_comp_index(store); 742 tmp[2] = snd_get_meter_comp_index(store);
743 snd_us16x08_send_urb(chip, tmp, 10); 743 snd_us16x08_send_urb(chip, tmp, sizeof(mix_init_msg2));
744 snd_us16x08_recv_urb(chip, meter_urb, 744 snd_us16x08_recv_urb(chip, meter_urb,
745 sizeof(meter_urb)); 745 sizeof(meter_urb));
746 kcontrol->private_value = 0; 746 kcontrol->private_value = 0;