2007-05-12 18:29:31

by Richard Knutsson

[permalink] [raw]
Subject: [PATCH] usbusx2yaudio: kfree(NULL) is valid

if (!x) kfree(x); is not needed since kfree(NULL) is valid.

Signed-off-by: Richard Knutsson <[email protected]>
---
Compile-tested with all(yes|mod|no)config on x86(|_64) & sparc(|64)
Diffed against Linus' git-tree.


diff --git a/sound/usb/usx2y/usbusx2yaudio.c b/sound/usb/usx2y/usbusx2yaudio.c
index 0a352e4..48e9aa3 100644
--- a/sound/usb/usx2y/usbusx2yaudio.c
+++ b/sound/usb/usx2y/usbusx2yaudio.c
@@ -935,10 +935,9 @@ static struct snd_pcm_ops snd_usX2Y_pcm_ops =
*/
static void usX2Y_audio_stream_free(struct snd_usX2Y_substream **usX2Y_substream)
{
- if (NULL != usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]) {
- kfree(usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]);
- usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK] = NULL;
- }
+ kfree(usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]);
+ usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK] = NULL;
+
kfree(usX2Y_substream[SNDRV_PCM_STREAM_CAPTURE]);
usX2Y_substream[SNDRV_PCM_STREAM_CAPTURE] = NULL;
}


2007-05-14 09:34:31

by Takashi Iwai

[permalink] [raw]
Subject: Re: [PATCH] usbusx2yaudio: kfree(NULL) is valid

At Sat, 12 May 2007 20:29:20 +0200 (MEST),
Richard Knutsson wrote:
>
> if (!x) kfree(x); is not needed since kfree(NULL) is valid.
>
> Signed-off-by: Richard Knutsson <[email protected]>
> ---
> Compile-tested with all(yes|mod|no)config on x86(|_64) & sparc(|64)
> Diffed against Linus' git-tree.

Thanks, merged to ALSA tree now.


Takashi

>
>
> diff --git a/sound/usb/usx2y/usbusx2yaudio.c b/sound/usb/usx2y/usbusx2yaudio.c
> index 0a352e4..48e9aa3 100644
> --- a/sound/usb/usx2y/usbusx2yaudio.c
> +++ b/sound/usb/usx2y/usbusx2yaudio.c
> @@ -935,10 +935,9 @@ static struct snd_pcm_ops snd_usX2Y_pcm_ops =
> */
> static void usX2Y_audio_stream_free(struct snd_usX2Y_substream **usX2Y_substream)
> {
> - if (NULL != usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]) {
> - kfree(usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]);
> - usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK] = NULL;
> - }
> + kfree(usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK]);
> + usX2Y_substream[SNDRV_PCM_STREAM_PLAYBACK] = NULL;
> +
> kfree(usX2Y_substream[SNDRV_PCM_STREAM_CAPTURE]);
> usX2Y_substream[SNDRV_PCM_STREAM_CAPTURE] = NULL;
> }
>