X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fcollectdmon.c;h=33f02b45694d889d07613a05110230c1b32d7442;hb=2c7b491427fd84c9e24c9d41686a15ce42219a0b;hp=6c50cf12509084f4958958261734bbcd6172ed9f;hpb=f5adf265a374e5e0dba89a4a9903e7719dc57039;p=collectd.git diff --git a/src/collectdmon.c b/src/collectdmon.c index 6c50cf12..33f02b45 100644 --- a/src/collectdmon.c +++ b/src/collectdmon.c @@ -317,7 +317,10 @@ int main (int argc, char **argv) openlog ("collectdmon", LOG_CONS | LOG_PID, LOG_DAEMON); if (-1 == daemonize ()) + { + free (collectd_argv); return 1; + } sa.sa_handler = sig_int_term_handler; sa.sa_flags = 0; @@ -325,11 +328,13 @@ int main (int argc, char **argv) if (0 != sigaction (SIGINT, &sa, NULL)) { syslog (LOG_ERR, "Error: sigaction() failed: %s", strerror (errno)); + free (collectd_argv); return 1; } if (0 != sigaction (SIGTERM, &sa, NULL)) { syslog (LOG_ERR, "Error: sigaction() failed: %s", strerror (errno)); + free (collectd_argv); return 1; } @@ -337,6 +342,7 @@ int main (int argc, char **argv) if (0 != sigaction (SIGHUP, &sa, NULL)) { syslog (LOG_ERR, "Error: sigaction() failed: %s", strerror (errno)); + free (collectd_argv); return 1; }