diff options
author | Warren Dukes <warren.dukes@gmail.com> | 2004-04-13 19:52:15 +0000 |
---|---|---|
committer | Warren Dukes <warren.dukes@gmail.com> | 2004-04-13 19:52:15 +0000 |
commit | 72e06e05a19c86b919b5ff389911afc1a73d19b3 (patch) | |
tree | 01bb61f0a2e0a1d8bdc7b4b4cdad1165a87ae3a4 | |
parent | 1f0f1b2892ceea3628e09a13eb60815e895b3f1e (diff) | |
download | mpd-72e06e05a19c86b919b5ff389911afc1a73d19b3.tar.gz mpd-72e06e05a19c86b919b5ff389911afc1a73d19b3.tar.xz mpd-72e06e05a19c86b919b5ff389911afc1a73d19b3.zip |
fix some misc chld signal handling for update process
git-svn-id: https://svn.musicpd.org/mpd/trunk@737 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to '')
-rw-r--r-- | TODO | 3 | ||||
-rw-r--r-- | src/directory.c | 6 |
2 files changed, 6 insertions, 3 deletions
@@ -8,6 +8,9 @@ that don't exist in the db, but do exit in the fs (i.e. calling updated on a newly created file). n) mpd command for rereading db + o) rewrite update functions to indicate if something was updated, then + when update process returns, indicate wheater db was updated + and should be reread by parent process 2) crosslink "list" stuff, for example, artists are crosslinked to alubms and vice versa, this way you can do list album artists or list artist albums, this diff --git a/src/directory.c b/src/directory.c index 370744aae..641ab46ed 100644 --- a/src/directory.c +++ b/src/directory.c @@ -120,7 +120,9 @@ void directory_sigChldHandler(int pid, int status) { "non-TERM signal: %i\n", WTERMSIG(status)); } - else if(WEXITSTATUS(status)==EXIT_SUCCESS) { + else if(!WIFSIGNALED(status) && + WEXITSTATUS(status)==EXIT_SUCCESS) + { DEBUG("direcotry_sigChldHandler: " "updated db succesffully\n"); directory_reReadDB = 1; @@ -150,8 +152,6 @@ int updateInit(FILE * fp, List * pathList) { directory_updatePid = fork(); if(directory_updatePid==0) { /* child */ - struct sigaction sa; - clearPlayerPid(); unblockSignals(); |