ALSA: pcm: Drop superfluous NULL check in snd_pcm_format_set_silence()

We applied a fix for a KASAN issue for snd_pcm_format_set_silence(),
and it introduced a NULL check of pat.  But this turned out to be
utterly superfluous; it points to pcm_formats[].silence, and this is
an array, which can be never NULL.

The problem (supposedly) it tried to address at that time was likely
already fixed by another commit 8423f0b6d5 ("ALSA: pcm: oss: Fix
race at SNDCTL_DSP_SYNC") instead.

So let's drop the superfluous NULL check again.  While we're at it,
keep the whitespace fix and move the pat assignment after the width
check for a bit better code readability.

Fixes: 2f7a26abb8 ("ALSA: pcm: Test for "silence" field in struct "pcm_format_data"")
Link: https://patch.msgid.link/20250227095150.8187-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2025-02-27 10:51:49 +01:00
parent 0f1f26c591
commit 604a0fe88d

View File

@ -432,9 +432,9 @@ int snd_pcm_format_set_silence(snd_pcm_format_t format, void *data, unsigned int
if (samples == 0)
return 0;
width = pcm_formats[(INT)format].phys; /* physical width */
pat = pcm_formats[(INT)format].silence;
if (!width || !pat)
if (!width)
return -EINVAL;
pat = pcm_formats[(INT)format].silence;
/* signed or 1 byte data */
if (pcm_formats[(INT)format].signd == 1 || width <= 8) {
unsigned int bytes = samples * width / 8;