X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=fade.c;h=3e8479a0eb7783db1af51edef03693e0c369b8a8;hp=f269f0292fbf31be9f48673314beee6c14cb8c05;hb=e6940831fbcf21dd0e6243ca89ea0c7f8b195d9e;hpb=b93ad3e1c6c4a2a757559cb068f4736464e4e551 diff --git a/fade.c b/fade.c index f269f029..3e8479a0 100644 --- a/fade.c +++ b/fade.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 1998-2007 Andre Noll + * Copyright (C) 1998-2008 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -15,7 +15,6 @@ #include #include -#include #include /* EXIT_SUCCESS */ #include #include @@ -149,7 +148,7 @@ out: close(mixer_fd); } -static int client_cmd(const char *cmd,...) +static void client_cmd(const char *cmd) { int ret, fds[3] = {0, 0, 0}; pid_t pid; @@ -158,7 +157,11 @@ static int client_cmd(const char *cmd,...) PARA_INFO_LOG("%s\n", cmdline); ret = para_exec_cmdline_pid(&pid, cmdline, fds); free(cmdline); - return ret; + if (ret < 0) + exit(EXIT_FAILURE); + do + ret = wait(NULL); + while (ret != -1 && errno != ECHILD); } static void change_afs_mode_and_play(char *afs_mode)