Mercurial > hg
comparison mcabber/src/main.c @ 676:80d4959422ca
New "eventcmd_checkstatus" option
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Thu, 26 Jan 2006 23:14:17 +0100 |
parents | fed6d1e4d7a9 |
children | ee03b56b93ee |
comparison
equal
deleted
inserted
replaced
675:ae7016aae014 | 676:80d4959422ca |
---|---|
120 if (signum == SIGCHLD) { | 120 if (signum == SIGCHLD) { |
121 int status; | 121 int status; |
122 pid_t pid; | 122 pid_t pid; |
123 do { | 123 do { |
124 pid = waitpid (WAIT_ANY, &status, WNOHANG); | 124 pid = waitpid (WAIT_ANY, &status, WNOHANG); |
125 // Check the exit status value if 'eventcmd_checkstatus' is set | |
126 if (settings_opt_get_int("eventcmd_checkstatus")) { | |
127 if (pid > 0) { | |
128 // exit status 2 -> beep | |
129 if (WIFEXITED(status) && WEXITSTATUS(status) == 2) { | |
130 scr_Beep(); | |
131 } | |
132 } | |
133 } | |
125 } while (pid > 0); | 134 } while (pid > 0); |
126 //if (pid < 0) | 135 //if (pid < 0) |
127 // scr_LogPrint(LPRINT_LOGNORM, "Error in waitpid: errno=%d", errno); | 136 // scr_LogPrint(LPRINT_LOGNORM, "Error in waitpid: errno=%d", errno); |
128 signal(SIGCHLD, sig_handler); | 137 signal(SIGCHLD, sig_handler); |
129 } else if (signum == SIGTERM) { | 138 } else if (signum == SIGTERM) { |