diff options
author | J. Alexander Treuman <jat@spatialrift.net> | 2007-08-27 21:18:35 +0000 |
---|---|---|
committer | J. Alexander Treuman <jat@spatialrift.net> | 2007-08-27 21:18:35 +0000 |
commit | 1b045d0672cb1a069efd2d150d81ae3d5253ada5 (patch) | |
tree | 39080f9f722639ffef7b98441942052c9d5e4025 /src/decode.c | |
parent | 752bf24b7475d89e97a450bab353f3a1892a1ce0 (diff) | |
download | mpd-1b045d0672cb1a069efd2d150d81ae3d5253ada5.tar.gz mpd-1b045d0672cb1a069efd2d150d81ae3d5253ada5.tar.xz mpd-1b045d0672cb1a069efd2d150d81ae3d5253ada5.zip |
removing debug messages from signal handlers
As unfortunate as it is to remove such useful debugging messages, it's
necessary to fix a potential deadlock with signal handling. A bunch of
functions the debug functions call aren't safe to call from a signal
handler. There are some alternate solutions, but they're neither pretty
nor simple. So just remove them entirely for now.
git-svn-id: https://svn.musicpd.org/mpd/trunk@6828 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/decode.c')
-rw-r--r-- | src/decode.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/decode.c b/src/decode.c index d32799d31..bf3e1cb25 100644 --- a/src/decode.c +++ b/src/decode.c @@ -44,23 +44,25 @@ void decodeSigHandler(int sig, siginfo_t * si, void *v) if (sig == SIGCHLD) { int status; if (decode_pid == wait3(&status, WNOHANG, NULL)) { + /* if (WIFSIGNALED(status)) { if (WTERMSIG(status) != SIGTERM) { ERROR("decode process died from " "signal: %i\n", WTERMSIG(status)); } } + */ decode_pid = 0; getPlayerData()->playerControl.decode_pid = 0; } } else if (sig == SIGTERM) { int pid = decode_pid; if (pid > 0) { - DEBUG("player (or child) got SIGTERM\n"); + /* DEBUG("player (or child) got SIGTERM\n"); */ kill(pid, SIGCONT); kill(pid, SIGTERM); - } else - DEBUG("decoder (or child) got SIGTERM\n"); + } /* else + DEBUG("decoder (or child) got SIGTERM\n"); */ exit(EXIT_SUCCESS); } } |