summaryrefslogtreecommitdiffstats
path: root/avahi-daemon
diff options
context:
space:
mode:
Diffstat (limited to 'avahi-daemon')
-rw-r--r--avahi-daemon/main.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/avahi-daemon/main.c b/avahi-daemon/main.c
index efb167e..821820e 100644
--- a/avahi-daemon/main.c
+++ b/avahi-daemon/main.c
@@ -703,6 +703,7 @@ static int run_server(DaemonConfig *c) {
int error;
const AvahiPoll *poll_api = NULL;
AvahiWatch *sig_watch = NULL;
+ int retval_is_sent = 0;
assert(c);
@@ -773,8 +774,10 @@ static int run_server(DaemonConfig *c) {
update_wide_area_servers();
- if (c->daemonize)
+ if (c->daemonize) {
daemon_retval_send(0);
+ retval_is_sent = 1;
+ }
for (;;) {
if ((r = avahi_simple_poll_iterate(simple_poll_api, -1)) < 0) {
@@ -819,7 +822,7 @@ finish:
simple_poll_api = NULL;
}
- if (r != 0 && c->daemonize)
+ if (!retval_is_sent && c->daemonize)
daemon_retval_send(1);
return r;