]> git.ipfire.org Git - thirdparty/HylaFAX.git/commitdiff
fixup: faxq: STDERR/STDOUT - runConverter()
authorAidan Van Dyk <aidan@ifax.com>
Mon, 28 Apr 2008 20:33:26 +0000 (20:33 +0000)
committerAidan Van Dyk <aidan@ifax.com>
Mon, 28 Apr 2008 20:33:26 +0000 (20:33 +0000)
faxd/faxQueueApp.c++

index 8c30da9328caaddb5325b4f17b902a79f7967817..dc0b995f72df02eca74176399849de64573649f7 100644 (file)
@@ -1189,6 +1189,7 @@ faxQueueApp::runConverter(Job& job, const char* app, char* const* argv, Status&
     JobStatus status;
     int pfd[2];
     if (pipe(pfd) >= 0) {
+       int fd;
        pid_t pid = fork();
        switch (pid) {
        case -1:                        // error
@@ -1201,6 +1202,12 @@ faxQueueApp::runConverter(Job& job, const char* app, char* const* argv, Status&
                dup2(pfd[1], STDOUT_FILENO);
            closeAllBut(STDOUT_FILENO);
            dup2(STDOUT_FILENO, STDERR_FILENO);
+           fd = Sys::open(_PATH_DEVNULL, O_RDWR);
+           if (fd != STDIN_FILENO)
+           {
+                   dup2(fd, STDIN_FILENO);
+                   Sys::close(fd);
+           }
            Sys::execv(app, argv);
            sleep(3);                   // XXX give parent time to catch signal
            _exit(255);