[PATCH] ALSA: Fix uninintialized error return

From: Colin King
Date: Mon Jun 29 2015 - 12:10:43 EST


From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

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 <tiwai@xxxxxxx>
Date: Mon May 18 09:20:24 2015 +0200

Fixes: 2471b6c80a ("ALSA: info: Register proc entries recursively, too")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
---
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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/