]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-http: client: Prevent infinite event loop involving the request handler.
authorStephan Bosch <stephan.bosch@dovecot.fi>
Fri, 16 Dec 2016 20:41:29 +0000 (21:41 +0100)
committerStephan Bosch <stephan.bosch@dovecot.fi>
Sat, 17 Dec 2016 18:42:59 +0000 (19:42 +0100)
Could happen when a backoff time is active.

src/lib-http/http-client-peer.c

index a7c9861113714b3d05bcef3934dc8140cb7b04af..9492289a2c93fbe5464581351b7a834045b1f644 100644 (file)
@@ -644,6 +644,9 @@ static void http_client_peer_drop(struct http_client_peer **_peer)
                return;
        }
 
+       if (peer->to_backoff != NULL)
+               return;
+
        if (http_client_peer_start_backoff_timer(peer)) {
                http_client_peer_debug(peer,
                        "Dropping peer (waiting for backof timeout)");