diff options
| author | Jesper Juhl <juhl-lkml@dif.dk> | 2005-05-30 11:30:32 -0400 |
|---|---|---|
| committer | Jaroslav Kysela <perex@suse.cz> | 2005-06-22 06:27:43 -0400 |
| commit | 4d572776d4dfa2d5385a2ec3acec3cc059149e13 (patch) | |
| tree | b25ff1baa8d106561d9f07045bbfea6ac330c714 /sound/usb | |
| parent | 6fd8b87f0e1e5de436ba020bd5806fe9ad738269 (diff) | |
[ALSA] Remove redundant NULL checks before kfree
Timer Midlevel,ALSA sequencer,ALSA<-OSS sequencer,Digigram VX core
I2C tea6330t,GUS Library,VIA82xx driver,VIA82xx-modem driver
CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,YMFPCI driver
Digigram VX Pocket driver,Common EMU synth,USB generic driver,USB USX2Y
Checking a pointer for NULL before calling kfree() on it is redundant,
kfree() deals with NULL pointers just fine.
This patch removes such checks from sound/
This patch also makes another, but closely related, change.
It avoids casting pointers about to be kfree()'ed.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
| -rw-r--r-- | sound/usb/usbaudio.c | 12 | ||||
| -rw-r--r-- | sound/usb/usbmixer.c | 6 | ||||
| -rw-r--r-- | sound/usb/usx2y/usbusx2yaudio.c | 6 |
3 files changed, 8 insertions, 16 deletions
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c index a82412b8790d..a75695045f29 100644 --- a/sound/usb/usbaudio.c +++ b/sound/usb/usbaudio.c | |||
| @@ -859,10 +859,8 @@ static void release_urb_ctx(snd_urb_ctx_t *u) | |||
| 859 | usb_free_urb(u->urb); | 859 | usb_free_urb(u->urb); |
| 860 | u->urb = NULL; | 860 | u->urb = NULL; |
| 861 | } | 861 | } |
| 862 | if (u->buf) { | 862 | kfree(u->buf); |
| 863 | kfree(u->buf); | 863 | u->buf = NULL; |
| 864 | u->buf = NULL; | ||
| 865 | } | ||
| 866 | } | 864 | } |
| 867 | 865 | ||
| 868 | /* | 866 | /* |
| @@ -880,10 +878,8 @@ static void release_substream_urbs(snd_usb_substream_t *subs, int force) | |||
| 880 | release_urb_ctx(&subs->dataurb[i]); | 878 | release_urb_ctx(&subs->dataurb[i]); |
| 881 | for (i = 0; i < SYNC_URBS; i++) | 879 | for (i = 0; i < SYNC_URBS; i++) |
| 882 | release_urb_ctx(&subs->syncurb[i]); | 880 | release_urb_ctx(&subs->syncurb[i]); |
| 883 | if (subs->tmpbuf) { | 881 | kfree(subs->tmpbuf); |
| 884 | kfree(subs->tmpbuf); | 882 | subs->tmpbuf = NULL; |
| 885 | subs->tmpbuf = NULL; | ||
| 886 | } | ||
| 887 | subs->nurbs = 0; | 883 | subs->nurbs = 0; |
| 888 | } | 884 | } |
| 889 | 885 | ||
diff --git a/sound/usb/usbmixer.c b/sound/usb/usbmixer.c index 83ba665e5c6e..e73c1c9d3e73 100644 --- a/sound/usb/usbmixer.c +++ b/sound/usb/usbmixer.c | |||
| @@ -623,10 +623,8 @@ static struct usb_feature_control_info audio_feature_info[] = { | |||
| 623 | /* private_free callback */ | 623 | /* private_free callback */ |
| 624 | static void usb_mixer_elem_free(snd_kcontrol_t *kctl) | 624 | static void usb_mixer_elem_free(snd_kcontrol_t *kctl) |
| 625 | { | 625 | { |
| 626 | if (kctl->private_data) { | 626 | kfree(kctl->private_data); |
| 627 | kfree(kctl->private_data); | 627 | kctl->private_data = NULL; |
| 628 | kctl->private_data = NULL; | ||
| 629 | } | ||
| 630 | } | 628 | } |
| 631 | 629 | ||
| 632 | 630 | ||
diff --git a/sound/usb/usx2y/usbusx2yaudio.c b/sound/usb/usx2y/usbusx2yaudio.c index 4c292e090069..62dfd28b3b07 100644 --- a/sound/usb/usx2y/usbusx2yaudio.c +++ b/sound/usb/usx2y/usbusx2yaudio.c | |||
| @@ -401,10 +401,8 @@ static void usX2Y_urbs_release(snd_usX2Y_substream_t *subs) | |||
| 401 | for (i = 0; i < NRURBS; i++) | 401 | for (i = 0; i < NRURBS; i++) |
| 402 | usX2Y_urb_release(subs->urb + i, subs != subs->usX2Y->subs[SNDRV_PCM_STREAM_PLAYBACK]); | 402 | usX2Y_urb_release(subs->urb + i, subs != subs->usX2Y->subs[SNDRV_PCM_STREAM_PLAYBACK]); |
| 403 | 403 | ||
| 404 | if (subs->tmpbuf) { | 404 | kfree(subs->tmpbuf); |
| 405 | kfree(subs->tmpbuf); | 405 | subs->tmpbuf = NULL; |
| 406 | subs->tmpbuf = NULL; | ||
| 407 | } | ||
| 408 | } | 406 | } |
| 409 | /* | 407 | /* |
| 410 | * initialize a substream's urbs | 408 | * initialize a substream's urbs |
