summaryrefslogtreecommitdiffabout
path: root/src
authorMichael Krelin <hacker@klever.net>2004-07-21 20:59:33 (UTC)
committer Michael Krelin <hacker@klever.net>2004-07-21 20:59:33 (UTC)
commit4b2d32eca61f62bfd1370fd64254514152ecd23c (patch) (side-by-side diff)
treeab7d32f4b1572a33d1384d3127495feaea3978b4 /src
parent5e437102c59f4544e3803598eabcb643d403272d (diff)
downloaddudki-4b2d32eca61f62bfd1370fd64254514152ecd23c.zip
dudki-4b2d32eca61f62bfd1370fd64254514152ecd23c.tar.gz
dudki-4b2d32eca61f62bfd1370fd64254514152ecd23c.tar.bz2
more civilized restart, bumped up version.
Diffstat (limited to 'src') (more/less context) (ignore whitespace changes)
-rw-r--r--src/dudki.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/dudki.cc b/src/dudki.cc
index b769109..b4e95a7 100644
--- a/src/dudki.cc
+++ b/src/dudki.cc
@@ -22,4 +22,5 @@ using namespace std;
bool finishing = false;
+bool restarting = false;
static char **_argv = NULL;
@@ -30,5 +31,5 @@ static void lethal_signal_handler(int signum) {
static void sighup_handler(int signum) {
syslog(LOG_NOTICE,"SUGHUP received, reloading.");
- execvp(_argv[0],_argv);
+ restarting = finishing = true;
}
@@ -238,4 +239,6 @@ int main(int argc,char **argv) {
sleep(config.check_interval);
}
+ if(restarting)
+ execvp(_argv[0],_argv);
}
break;