diff --git a/src/listener.c b/src/listener.c index 59aedb224..ecad1f072 100644 --- a/src/listener.c +++ b/src/listener.c @@ -296,6 +296,10 @@ int pause_listener(struct listener *l) if (l->state <= LI_ZOMBIE) goto end; + if ((global.mode & (MODE_DAEMON | MODE_MWORKER)) && + !(proc_mask(l->rx.settings->bind_proc) & pid_bit)) + goto end; + if (l->rx.proto->pause) { /* Returns < 0 in case of failure, 0 if the listener * was totally stopped, or > 0 if correctly paused.