summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Elfring <elfring@users.sourceforge.net>2026-06-17 08:42:18 +0200
committerTakashi Iwai <tiwai@suse.de>2026-06-17 11:06:09 +0200
commit9e6febe7891316182bcd80cb46b745a08ad0cacf (patch)
tree2d0f1a599857a7325f8ec215ef21680094c192b1
parent8956950dab22fbaefe92ca1980728165c5da793d (diff)
downloadlinux-next-9e6febe7891316182bcd80cb46b745a08ad0cacf.tar.gz
linux-next-9e6febe7891316182bcd80cb46b745a08ad0cacf.zip
ALSA: sh: Use more common error handling code in snd_aica_probe()
Use an additional label so that a bit of exception handling can be better reused at the end of this function implementation. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Link: https://patch.msgid.link/47413de1-015b-4543-8e8c-25e41dfa9e39@web.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/sh/aica.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/sh/aica.c b/sound/sh/aica.c
index 9438c3a68ee9..8196e1bf0416 100644
--- a/sound/sh/aica.c
+++ b/sound/sh/aica.c
@@ -564,10 +564,9 @@ static int snd_aica_probe(struct platform_device *devptr)
return -ENOMEM;
err = snd_card_new(&devptr->dev, index, SND_AICA_DRIVER,
THIS_MODULE, 0, &dreamcastcard->card);
- if (unlikely(err < 0)) {
- kfree(dreamcastcard);
- return err;
- }
+ if (unlikely(err < 0))
+ goto free_card;
+
strscpy(dreamcastcard->card->driver, "snd_aica");
strscpy(dreamcastcard->card->shortname, SND_AICA_DRIVER);
strscpy(dreamcastcard->card->longname,
@@ -593,6 +592,7 @@ static int snd_aica_probe(struct platform_device *devptr)
return 0;
freedreamcast:
snd_card_free(dreamcastcard->card);
+free_card:
kfree(dreamcastcard);
return err;
}