]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - audiod.c
Merge branch 'master' into my-osx
[paraslash.git] / audiod.c
index 032f9cd0743a85a492b5cb446ebc965dc3b2cb1f..8b9f181b80edfb74b31ec08aed23d61d74c8c19f 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -288,8 +288,7 @@ void __noreturn clean_exit(int status, const char *msg)
        PARA_EMERG_LOG("%s\n", msg);
        if (socket_name)
                unlink(socket_name);
-       if (stat_task->fd >= 0)
-               close_stat_pipe();
+       close_stat_pipe();
        exit(status);
 }
 
@@ -882,6 +881,7 @@ static int audiod_get_socket(void)
                exit(EXIT_FAILURE); /* do not unlink socket */
        }
        add_close_on_fork_list(fd);
+       mark_fd_nonblock(fd);
        return fd;
 }
 
@@ -894,6 +894,7 @@ static int open_stat_pipe(void)
                ret = fd[1];
                PARA_NOTICE_LOG("stat pipe opened, fd %d\n", ret);
                add_close_on_fork_list(ret);
+               mark_fd_nonblock(ret);
        } else
                clean_exit(EXIT_FAILURE, "failed to open status pipe");
        return ret;
@@ -1052,8 +1053,6 @@ int main(int argc, char *argv[])
        struct command_task command_task_struct, *cmd_task = &command_task_struct;
        struct task audiod_task_struct, *audiod_task = &audiod_task_struct;
 
-       init_sched();
-
        valid_fd_012();
        cmdline_parser(argc, argv, &conf);
        para_drop_privileges(conf.user_arg, conf.group_arg);