From: Takashi Iwai Date: Tue, 3 Jan 2006 18:56:55 +0000 (+0100) Subject: [ALSA] opl3 - Fix the unreleased resources X-Git-Tag: v2.6.16-rc1~474^2~22^2~3^2~1 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=676338a1623ee9b60a6efb19ef8f743ab3b2eecb;p=linux-2.6 [ALSA] opl3 - Fix the unreleased resources Modules: OPL3 Fix the unreleased resources in the error path of snd_opl3_create(). Signed-off-by: Takashi Iwai --- diff --git a/sound/drivers/opl3/opl3_lib.c b/sound/drivers/opl3/opl3_lib.c index 650f3b8e60..1e0c76b9ac 100644 --- a/sound/drivers/opl3/opl3_lib.c +++ b/sound/drivers/opl3/opl3_lib.c @@ -409,13 +409,13 @@ int snd_opl3_create(struct snd_card *card, if (! integrated) { if ((opl3->res_l_port = request_region(l_port, 2, "OPL2/3 (left)")) == NULL) { snd_printk(KERN_ERR "opl3: can't grab left port 0x%lx\n", l_port); - snd_opl3_free(opl3); + snd_device_free(card, opl3); return -EBUSY; } if (r_port != 0 && (opl3->res_r_port = request_region(r_port, 2, "OPL2/3 (right)")) == NULL) { snd_printk(KERN_ERR "opl3: can't grab right port 0x%lx\n", r_port); - snd_opl3_free(opl3); + snd_device_free(card, opl3); return -EBUSY; } } @@ -434,7 +434,7 @@ int snd_opl3_create(struct snd_card *card, if ((err = snd_opl3_detect(opl3)) < 0) { snd_printd("OPL2/3 chip not detected at 0x%lx/0x%lx\n", opl3->l_port, opl3->r_port); - snd_opl3_free(opl3); + snd_device_free(card, opl3); return err; } /* detect routine returns correct hardware type */