From: Jaroslav Kysela Date: Fri, 24 May 2019 09:09:43 +0000 (+0200) Subject: pcm_file: call pclose() correctly for popen() (coverity) X-Git-Tag: v1.2.1~63 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=22ade9b8c150240a960ca683ee6d8f53ce8bc6ea;p=alsa-lib.git pcm_file: call pclose() correctly for popen() (coverity) Signed-off-by: Jaroslav Kysela --- diff --git a/src/pcm/pcm_file.c b/src/pcm/pcm_file.c index 52cc10a9..99db3754 100644 --- a/src/pcm/pcm_file.c +++ b/src/pcm/pcm_file.c @@ -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,