]> git.alsa-project.org Git - alsa-lib.git/commitdiff
pcm_file: call pclose() correctly for popen() (coverity)
authorJaroslav Kysela <perex@perex.cz>
Fri, 24 May 2019 09:09:43 +0000 (11:09 +0200)
committerJaroslav Kysela <perex@perex.cz>
Fri, 24 May 2019 19:25:50 +0000 (21:25 +0200)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
src/pcm/pcm_file.c

index 52cc10a9436a14490955bcdf5752c245db81a270..99db3754fa320f6dc710bd1c3fa2a5f3890a41f8 100644 (file)
@@ -227,7 +227,14 @@ static int snd_pcm_file_open_output_file(snd_pcm_file_t *file)
                                        file->final_fname);
                        return -errno;
                }
-               fd = fileno(pipe);
+               fd = dup(fileno(pipe));
+               err = -errno;
+               pclose(pipe);
+               if (fd < 0) {
+                       SYSERR("unable to dup pipe file handle for command %s",
+                                       file->final_fname);
+                       return err;
+               }
        } else {
                if (file->trunc)
                        fd = open(file->final_fname, O_WRONLY|O_CREAT|O_TRUNC,