Commit 4b1b92bd authored by wangdicheng's avatar wangdicheng Committed by Takashi Iwai
Browse files

ALSA: au88x0: Fix array bounds warning in EQ drivers



In file included from ../sound/pci/au88x0/au8830.c:15:
In function ‘vortex_Eqlzr_SetAllBandsFromActiveCoeffSet’,
../sound/pci/au88x0/au88x0_eq.c:571:9: error: ‘vortex_EqHw_SetRightGainsTarget’ reading 2 bytes from a region of size 0 [-Werror=stringop-overread]
	vortex_EqHw_SetRightGainsTarget(vortex, &(eq->this130[eq->this10]));

Modified the array access in vortex_Eqlzr_SetAllBandsFromActiveCoeffSet() to use pointer arithmetic instead of array indexing.
This resolves a compiler warning that incorrectly flagged a buffer overread when accessing the EQ gain array.
The this130 array has fixed size 20 and the index is safely within bounds, making the original code correct but confusing to static analysis.

Signed-off-by: default avatarwangdicheng <wangdicheng@kylinos.cn>
Link: https://patch.msgid.link/20251107024525.38454-1-wangdich9700@163.com


Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 592d1c23
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -568,7 +568,7 @@ static int vortex_Eqlzr_SetAllBandsFromActiveCoeffSet(vortex_t * vortex)
	eqlzr_t *eq = &(vortex->eq);

	vortex_EqHw_SetLeftGainsTarget(vortex, eq->this130);
	vortex_EqHw_SetRightGainsTarget(vortex, &(eq->this130[eq->this10]));
	vortex_EqHw_SetRightGainsTarget(vortex, eq->this130 + eq->this10);

	return 0;
}