Skip to content

Commit 89b593c

Browse files
takaswietiwai
authored andcommitted
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: d2bb390 ("ALSA: usb-audio: Tascam US-16x08 DSP mixer quirk") Signed-off-by: Takashi Sakamoto <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
1 parent 4b49f0f commit 89b593c

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

sound/usb/mixer_us16x08.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -711,7 +711,7 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
711711
struct snd_usb_audio *chip = elem->head.mixer->chip;
712712
struct snd_us16x08_meter_store *store = elem->private_data;
713713
u8 meter_urb[64];
714-
char tmp[max(sizeof(mix_init_msg1), sizeof(mix_init_msg2))];
714+
char tmp[sizeof(mix_init_msg2)] = {0};
715715

716716
if (elem) {
717717
store = (struct snd_us16x08_meter_store *) elem->private_data;
@@ -721,8 +721,8 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
721721

722722
switch (kcontrol->private_value) {
723723
case 0:
724-
memcpy(tmp, mix_init_msg1, sizeof(mix_init_msg1));
725-
snd_us16x08_send_urb(chip, tmp, 4);
724+
snd_us16x08_send_urb(chip, (char *)mix_init_msg1,
725+
sizeof(mix_init_msg1));
726726
snd_us16x08_recv_urb(chip, meter_urb,
727727
sizeof(meter_urb));
728728
kcontrol->private_value++;
@@ -740,7 +740,7 @@ static int snd_us16x08_meter_get(struct snd_kcontrol *kcontrol,
740740
case 3:
741741
memcpy(tmp, mix_init_msg2, sizeof(mix_init_msg2));
742742
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));
744744
snd_us16x08_recv_urb(chip, meter_urb,
745745
sizeof(meter_urb));
746746
kcontrol->private_value = 0;

0 commit comments

Comments
 (0)