From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750807AbdKLKJx (ORCPT ); Sun, 12 Nov 2017 05:09:53 -0500 Received: from mout.web.de ([212.227.15.14]:59980 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750704AbdKLKJu (ORCPT ); Sun, 12 Nov 2017 05:09:50 -0500 To: alsa-devel@alsa-project.org, Jaroslav Kysela , Takashi Iwai Cc: LKML , kernel-janitors@vger.kernel.org From: SF Markus Elfring Subject: [PATCH] ALSA: ak4531_codec: Use common error handling code in snd_ak4531_mixer() Message-ID: <5615b3be-55ab-c4c1-bc7d-a7c7ba3620f3@users.sourceforge.net> Date: Sun, 12 Nov 2017 11:08:33 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:G8OduIo4qBd40eulJdAHtlvOVSKX2Blhfzjkw6ifyiy59rjLIt4 9kMvco/EtAZQdrygaRlQzF7yA2dFcV1HnFBoEFwkkRwlk+WpNMig+B+0XtjSZSB0Hi0BpTR 8FQ3u0MHBuLD7qpVwMObG8pWJ+Op91Xfpz8H623v0Ai3shMes042fF7OTBzvz1QtEi6M1ph 1KBqi19szOl6WijQCFv+g== X-UI-Out-Filterresults: notjunk:1;V01:K0:jzel2TOp6sc=:kueJVvpNiFiNiIUSYWnfLs QtHTKuQKS6BXbI2CWUN9vFAC0NxIICL4K/W4oJ/3j6ncKta2BdQhdCk+yX7tViazAbgjfJvkh dQEObNqz9XWQc1pSvIqYiutlXlC65+3GUVaH4IgBaHEhDg5VejRUnlm1JyTCxwIkBb3bpK7e1 KOS5Wx2HQTDPI4GpmOn+xaxd5pjObn1dR9XOI5wO9HgYmg5DgSZDzTVnPppz+1WiCRGcyZ7oS FCzmHeXomSK9ZFnRQzPC9zW7uMhVUFQ9c/Y3JbuZHIJkonUfdz8HweBn4/BMqsXIU9DubJaTO 6DfzRFbexE2XPlKsw0/VFdOMDciVnivYqI+j8ForXacCIqYJeB4cR/w4O7odK/RPllzCr8s58 R9aEGLvFnm4utlYtY8V1rwgyPECaaeIiwp8aWJmnNdxcMkcMLWCkxqzsc9u191d95CnuCZQF+ PG982t42LikNDmdEtedY9OcfsDHaRGCGIQZE96fa+Hez2bQWSqkHCr/ty7WCo3cHR3omn99qu Froi0V41MOmKeqQwN8az+pXtNFE8BPa9bZ0LGWvPUwwNFzZljRlVww1FqKMiQSQYw/SnoIPOZ EIcHqnR9UzTJo5kNBKH3OwH3xXesYnIUr0bWmLwnHyoLpXvZc9L4UdM64ZZGckM8rdcGlH7Y7 a1oZiR/KQKZfJ29WPIyJ7jnG9S6x+IBcUNLobTVkOMz5RYwUtW+Hy0HvkFaGIlfe9NfVAmCGe Umc3dwwdc9KHfuJiGQ0AGhfS5+3VgIXfrnfegQGaqA37DG5emoZeZg+DURemG5CyuugUUkrjJ aAQVQzrdHTLo+PIVgHps0bzIJblfAy2nVTb5jBCT0HyFE6QSK0= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Sun, 12 Nov 2017 10:56:19 +0100 * 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. * The script "checkpatch.pl" pointed information out like the following. ERROR: do not use assignment in if condition Thus fix three affected source code places. Signed-off-by: Markus Elfring --- sound/pci/ak4531_codec.c | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/sound/pci/ak4531_codec.c b/sound/pci/ak4531_codec.c index 2fb1fbba3e5e..208c96d6ae0f 100644 --- a/sound/pci/ak4531_codec.c +++ b/sound/pci/ak4531_codec.c @@ -399,10 +399,10 @@ int snd_ak4531_mixer(struct snd_card *card, return -ENOMEM; *ak4531 = *_ak4531; mutex_init(&ak4531->reg_mutex); - if ((err = snd_component_add(card, "AK4531")) < 0) { - snd_ak4531_free(ak4531); - return err; - } + err = snd_component_add(card, "AK4531"); + if (err < 0) + goto free_ac; + strcpy(card->mixername, "Asahi Kasei AK4531"); ak4531->write(ak4531, AK4531_RESET, 0x03); /* no RST, PD */ udelay(100); @@ -413,16 +413,16 @@ int snd_ak4531_mixer(struct snd_card *card, ak4531->write(ak4531, idx, ak4531->regs[idx] = snd_ak4531_initial_map[idx]); /* recording source is mixer */ } for (idx = 0; idx < ARRAY_SIZE(snd_ak4531_controls); idx++) { - if ((err = snd_ctl_add(card, snd_ctl_new1(&snd_ak4531_controls[idx], ak4531))) < 0) { - snd_ak4531_free(ak4531); - return err; - } + err = snd_ctl_add(card, + snd_ctl_new1(&snd_ak4531_controls[idx], + ak4531)); + if (err < 0) + goto free_ac; } snd_ak4531_proc_init(card, ak4531); - if ((err = snd_device_new(card, SNDRV_DEV_CODEC, ak4531, &ops)) < 0) { - snd_ak4531_free(ak4531); - return err; - } + err = snd_device_new(card, SNDRV_DEV_CODEC, ak4531, &ops); + if (err < 0) + goto free_ac; #if 0 snd_ak4531_dump(ak4531); @@ -430,6 +430,10 @@ int snd_ak4531_mixer(struct snd_card *card, if (rak4531) *rak4531 = ak4531; return 0; + +free_ac: + snd_ak4531_free(ak4531); + return err; } /* -- 2.15.0