Handle mpg123 failures without leaking fd's
authorMark Spencer <markster@digium.com>
Tue, 4 Nov 2003 23:23:00 +0000 (23:23 +0000)
committerMark Spencer <markster@digium.com>
Tue, 4 Nov 2003 23:23:00 +0000 (23:23 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1692 65c4cc65-6c06-0410-ace0-fbb531ad65f3

res/res_musiconhold.c

index 5ca4f5f..f6a3d5b 100755 (executable)
@@ -163,6 +163,8 @@ static int spawn_mp3(struct mohclass *class)
 #endif 
        if (!files) {
                ast_log(LOG_WARNING, "Found no files in '%s'\n", class->dir);
+               close(fds[0]);
+               close(fds[1]);
                return -1;
        }
        class->pid = fork();
@@ -189,6 +191,7 @@ static int spawn_mp3(struct mohclass *class)
                /* Check PATH as a last-ditch effort */
                execvp("mpg123", argv);
                ast_log(LOG_WARNING, "Exec failed: %s\n", strerror(errno));
+               close(fds[1]);
                exit(1);
        } else {
                /* Parent */