From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752574AbbF3GXG (ORCPT ); Tue, 30 Jun 2015 02:23:06 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:39566 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750750AbbF3GW4 (ORCPT ); Tue, 30 Jun 2015 02:22:56 -0400 Message-ID: <559235B1.9000604@canonical.com> Date: Tue, 30 Jun 2015 07:22:41 +0100 From: Colin Ian King User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Takashi Iwai CC: Jaroslav Kysela , Mark Brown , Jie Yang , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] ALSA: Fix uninintialized error return References: <1435594222-17690-1-git-send-email-colin.king@canonical.com> In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 29/06/15 18:10, Takashi Iwai wrote: > At Mon, 29 Jun 2015 17:10:22 +0100, > Colin King wrote: >> >> From: Colin Ian King >> >> Static analysis with cppcheck found the following error: >> [sound/core/init.c:118]: (error) Uninitialized variable: err >> >> ..this was introduced by commit 2471b6c80a70e80de69f5ff4c37187c3912e5874 >> ("ALSA: info: Register proc entries recursively, too") where the call >> to snd_info_card_register was removed and no longer setting the error >> return in err. When snd_info_create_card_entry fails to allocate a >> an entry, the error path exits with garbage in err. Fix is to return >> -ENOMEM if entry fails to be allocated. >> >> Author: Takashi Iwai >> Date: Mon May 18 09:20:24 2015 +0200 > > These two lines seem superfluous. I removed them and applied the > patch now. Thanks. > Thanks, somehow I missed that cut-n-paste mistake. > > Takashi > >> >> Fixes: 2471b6c80a ("ALSA: info: Register proc entries recursively, too") >> Signed-off-by: Colin Ian King >> --- >> sound/core/init.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/sound/core/init.c b/sound/core/init.c >> index 3e0ceba..20f37fb 100644 >> --- a/sound/core/init.c >> +++ b/sound/core/init.c >> @@ -109,13 +109,12 @@ static void snd_card_id_read(struct snd_info_entry *entry, >> >> static int init_info_for_card(struct snd_card *card) >> { >> - int err; >> struct snd_info_entry *entry; >> >> entry = snd_info_create_card_entry(card, "id", card->proc_root); >> if (!entry) { >> dev_dbg(card->dev, "unable to create card entry\n"); >> - return err; >> + return -ENOMEM; >> } >> entry->c.text.read = snd_card_id_read; >> card->proc_id = entry; >> -- >> 2.1.4 >>