ALSA: hda - Fix missing va_end() call in snd_hda_codec_pcm_new()
authorTakashi Iwai <tiwai@suse.de>
Mon, 27 Apr 2015 14:39:19 +0000 (16:39 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 27 Apr 2015 14:39:19 +0000 (16:39 +0200)
Reported by coverity CID 1296024.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_codec.c

index 27333e0d8ebe64de3edfc3aa6c621b5296eb9710..b49feff0a31982e7c22071c08e8d088e91a97727 100644 (file)
@@ -873,14 +873,15 @@ struct hda_pcm *snd_hda_codec_pcm_new(struct hda_codec *codec,
        struct hda_pcm *pcm;
        va_list args;
 
-       va_start(args, fmt);
        pcm = kzalloc(sizeof(*pcm), GFP_KERNEL);
        if (!pcm)
                return NULL;
 
        pcm->codec = codec;
        kref_init(&pcm->kref);
+       va_start(args, fmt);
        pcm->name = kvasprintf(GFP_KERNEL, fmt, args);
+       va_end(args);
        if (!pcm->name) {
                kfree(pcm);
                return NULL;