aboutsummaryrefslogtreecommitdiffstats
path: root/src/decode.c
diff options
context:
space:
mode:
authorWarren Dukes <warren.dukes@gmail.com>2004-04-11 23:07:43 +0000
committerWarren Dukes <warren.dukes@gmail.com>2004-04-11 23:07:43 +0000
commitae33b348afa800447db9344cf6e5d082f1a1fcb3 (patch)
tree6e0977b81c8f9413a5513d27bd3a53cccabcf950 /src/decode.c
parent063affb04775fcf59e92df0bf70f0ecec0edf4ed (diff)
downloadmpd-ae33b348afa800447db9344cf6e5d082f1a1fcb3.tar.gz
mpd-ae33b348afa800447db9344cf6e5d082f1a1fcb3.tar.xz
mpd-ae33b348afa800447db9344cf6e5d082f1a1fcb3.zip
clean up signal handling using a polling method, from the genius that is mackstann
git-svn-id: https://svn.musicpd.org/mpd/trunk@697 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to '')
-rw-r--r--src/decode.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/decode.c b/src/decode.c
index b5f7da213..5cb5cfa20 100644
--- a/src/decode.c
+++ b/src/decode.c
@@ -58,9 +58,10 @@ void decodeSigHandler(int sig) {
if(sig==SIGCHLD) {
int status;
if(decode_pid && *decode_pid==wait3(&status,WNOHANG,NULL)) {
- if(WIFSIGNALED(status) && WTERMSIG(status)!=SIGTERM) {
- ERROR("decode process died from a "
- "non-TERM signal: %i\n",
+ if(WIFSIGNALED(status) && WTERMSIG(status)!=SIGTERM &&
+ WTERMSIG(status)!=SIGINT)
+ {
+ ERROR("decode process died from signal: %i\n",
WTERMSIG(status));
}
*decode_pid = 0;