mirror of https://gitee.com/openkylin/linux.git
ALSA: Xonar, CS43xx: Don't overrun static array
'cs4398_regs' in 'struct xonar_cs43xx' is an array of 'u8' with a size of 8. So, this code in sound/pci/oxygen/xonar_cs43xx.c::dump_d1_registers() for (i = 2; i <= 8; ++i) snd_iprintf(buffer, " %02x", data->cs4398_regs[i]); will overrun the array when 'i == 8'. I guess that what's needed to fix it is the trivial patch below, but I must admit that I have no idea about this code, so I may very well be wrong. Additionally, I have no way to actually test this, so all I know is that the below compiles. Someone who actually knows this code should take a look before anything is comitted - consider the below (not much more than) a bug report. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Acked-by: Clemens Ladisch <clemens@ladisch.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
842a209700
commit
233d84c46c
|
@ -392,7 +392,7 @@ static void dump_d1_registers(struct oxygen *chip,
|
|||
unsigned int i;
|
||||
|
||||
snd_iprintf(buffer, "\nCS4398: 7?");
|
||||
for (i = 2; i <= 8; ++i)
|
||||
for (i = 2; i < 8; ++i)
|
||||
snd_iprintf(buffer, " %02x", data->cs4398_regs[i]);
|
||||
snd_iprintf(buffer, "\n");
|
||||
dump_cs4362a_registers(data, buffer);
|
||||
|
|
Loading…
Reference in New Issue