]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
master: Reset service's listen_pending flag when it gets a new available process.
authorTimo Sirainen <tss@iki.fi>
Thu, 20 Oct 2011 15:26:15 +0000 (18:26 +0300)
committerTimo Sirainen <tss@iki.fi>
Thu, 20 Oct 2011 15:26:15 +0000 (18:26 +0300)
src/master/service-monitor.c

index ba19a625c365df2445a46ab19b90ace6599eaf9c..c22bdbb75d5bf5a7dcf47dd519b61a19e9af882e 100644 (file)
@@ -216,8 +216,8 @@ static void service_drop_connections(struct service_listener *l)
                   reach connection limit */
                service_login_notify(service, TRUE);
 
-               service->listen_pending = TRUE;
                service_monitor_listen_stop(service);
+               service->listen_pending = TRUE;
        } else {
                /* just accept and close the connection, so it's clear that
                   this is happening because of the limit, rather than because
@@ -302,6 +302,7 @@ void service_monitor_listen_stop(struct service *service)
                        io_remove(&l->io);
        }
        service->listening = FALSE;
+       service->listen_pending = FALSE;
 }
 
 static int service_login_create_notify_fd(struct service *service)