From patchwork Tue Aug 22 14:00:26 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 9915307 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id D42CF603F9 for ; Tue, 22 Aug 2017 14:00:42 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D8458288A8 for ; Tue, 22 Aug 2017 14:00:42 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CD517288B2; Tue, 22 Aug 2017 14:00:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.4 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM autolearn=no version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 22042288B6 for ; Tue, 22 Aug 2017 14:00:42 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id 1F514266FCB; Tue, 22 Aug 2017 16:00:40 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 1EB92266FCD; Tue, 22 Aug 2017 16:00:38 +0200 (CEST) Received: from mout.web.de (mout.web.de [212.227.15.14]) by alsa0.perex.cz (Postfix) with ESMTP id 56E36266812 for ; Tue, 22 Aug 2017 16:00:35 +0200 (CEST) Received: from [192.168.1.2] ([77.181.75.183]) by smtp.web.de (mrweb001 [213.165.67.108]) with ESMTPSA (Nemesis) id 0LfAbI-1dDEbk2mXA-00ooaP; Tue, 22 Aug 2017 16:00:28 +0200 To: alsa-devel@alsa-project.org, Dan Carpenter , Jaroslav Kysela , Takashi Iwai References: <08ee0d6b-788b-2845-6964-e1e55c2d2292@users.sourceforge.net> <20170822121625.syvr64kwyh5xjexg@mwanda> From: SF Markus Elfring Message-ID: <1b3cea97-e99e-ec7e-9b5c-0de728f8f383@users.sourceforge.net> Date: Tue, 22 Aug 2017 16:00:26 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Language: en-GB X-Provags-ID: V03:K0:B495QdTYrtEhRbgoDQSs8msCPmWIiZVwArDxDACkk+mrB5A5N3N kacR1wAwqF0ohOC97zOhky9xQDAoXLPF2lZBzHIaD4TIR2kS3ab5Lb1P7K90QIf1m8wf3vQ Z9pCQuPO7kAIASoJ5YZbVZA0Ql46EVYz7uQJFx4R0jsUrs9dcmtv6q1rMIsXslKMoubrsgx I2yXgOkIKs57EBqmP57UA== X-UI-Out-Filterresults: notjunk:1; V01:K0:Mpmc6MablPA=:aiQIG1YZSGlFxryrrBcI0X 4G88rzuLCiY3fbttcnALYRHJ3lbPbtjJ8LtZPy2yiNtWnp4WTEmmX2f3mmyfUUqcvgrkt3NKV HS9WOrE0aW+AQJ2vH3yEtSy8oCgt+ppSBRub1c8r1p3snvyCMN1B5a4gaU4C161ng66R40bnv wR4BtCFZBNWHEHx5Lrm1h078NCB4/w1KMCJNc00aTVok6C81tK47uc/+8H6hT5+iG1rUcCb3Z xxPS4lc0czSXSo/VEoTZtPSXDVnrPvd4zW4ny/7XjRcA7heXOOqYOGOkvPQUofpNWtRzSPqrX NC0NFz1sJIapDsXw8K32SvldTMQBlC0E1bybnQ2pKqRSBZemveX4EhLEvDuoWQphQJhMC3Ymo 18CQbkF8JBO+FKlh3RkaqjE9Hpp+4KYyoHPu8ahdOuEhd4wzNlYyLttMzsWtHB8HF43SxpS/L 0oKo8vi+sNHQREtakqzjN6Hx7STtpKRjhN2Byy3XJ5/s3BSc2090nXTjQLhAgaY4SavsaTDat ZDoixmmCgjiBnLqCVGq0mHN3bmLANhDBR8PjarkGV1bZLgG80URJMBDe8DwOlSGMU3BLYApG9 yO/YWrZBCdWCiL/giAdSsm/RIzuZsr37n9TH/A9RNRVnb7bA5j9cbl30SltysbUzFsHSrIXAH 7RDkCaLKs21rNEKyvpCLtZIZABB8kM+sx8yWBgoyNuaDptCf1Oi0qXcW7ndSUioJHlBcevRlX km9lbVGGkpZzTlTY/FNLlGL3HWo/HwKspzlLkXw0WyiAuR16NKGDBfDwGYzQ6LzX2KZia8qls 9tyKU3am9QEPaPse4AamjQAsWGfQFIXpdr31SThyIQmC2iy22F2hPfo2r+5d0bws0TZ0DMR Cc: kernel-janitors@vger.kernel.org, LKML Subject: [alsa-devel] [PATCH v2] ALSA: pcsp: Use common error handling code in snd_card_pcsp_probe() X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP From: Markus Elfring Date: Tue, 22 Aug 2017 15:50:53 +0200 Add a jump target so that a bit of exception handling can be better reused at the end of this function. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- v2: Do you find this refactoring acceptable instead? sound/drivers/pcsp/pcsp.c | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/sound/drivers/pcsp/pcsp.c b/sound/drivers/pcsp/pcsp.c index 72e2d0012084..fc83139fcfa2 100644 --- a/sound/drivers/pcsp/pcsp.c +++ b/sound/drivers/pcsp/pcsp.c @@ -108,22 +108,17 @@ static int snd_card_pcsp_probe(int devnum, struct device *dev) return err; err = snd_pcsp_create(card); - if (err < 0) { - snd_card_free(card); - return err; - } + if (err) + goto free_card; + if (!nopcm) { err = snd_pcsp_new_pcm(&pcsp_chip); - if (err < 0) { - snd_card_free(card); - return err; - } + if (err) + goto free_card; } err = snd_pcsp_new_mixer(&pcsp_chip, nopcm); - if (err < 0) { - snd_card_free(card); - return err; - } + if (err) + goto free_card; strcpy(card->driver, "PC-Speaker"); strcpy(card->shortname, "pcsp"); @@ -131,12 +126,13 @@ static int snd_card_pcsp_probe(int devnum, struct device *dev) pcsp_chip.port); err = snd_card_register(card); - if (err < 0) { - snd_card_free(card); - return err; - } + if (err) + goto free_card; return 0; +free_card: + snd_card_free(card); + return err; } static int alsa_card_pcsp_init(struct device *dev)