dovecot-2.2: lib-http: Minor code cleanup.

dovecot at dovecot.org dovecot at dovecot.org
Thu Jun 27 20:28:11 EEST 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/cf9024b01720
changeset: 16566:cf9024b01720
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Jun 27 20:24:45 2013 +0300
description:
lib-http: Minor code cleanup.

diffstat:

 src/lib-http/http-client-connection.c |  11 +++++++++--
 src/lib-http/http-client-peer.c       |   5 ++---
 src/lib-http/http-client-private.h    |   2 ++
 3 files changed, 13 insertions(+), 5 deletions(-)

diffs (55 lines):

diff -r af23c7a899a9 -r cf9024b01720 src/lib-http/http-client-connection.c
--- a/src/lib-http/http-client-connection.c	Thu Jun 27 18:04:04 2013 +0300
+++ b/src/lib-http/http-client-connection.c	Thu Jun 27 20:24:45 2013 +0300
@@ -44,15 +44,22 @@
 
 static void http_client_connection_input(struct connection *_conn);
 
-bool http_client_connection_is_ready(struct http_client_connection *conn)
+unsigned int
+http_client_connection_count_pending(struct http_client_connection *conn)
 {
 	unsigned int pending_count = array_count(&conn->request_wait_list);
 
 	if (conn->pending_request != NULL)
 		pending_count++;
+	return pending_count;
+}
+
+bool http_client_connection_is_ready(struct http_client_connection *conn)
+{
 	return (conn->connected && !conn->output_locked &&
 		!conn->close_indicated &&
-		pending_count < conn->client->set.max_pipelined_requests);
+		http_client_connection_count_pending(conn) <
+			conn->client->set.max_pipelined_requests);
 }
 
 bool http_client_connection_is_idle(struct http_client_connection *conn)
diff -r af23c7a899a9 -r cf9024b01720 src/lib-http/http-client-peer.c
--- a/src/lib-http/http-client-peer.c	Thu Jun 27 18:04:04 2013 +0300
+++ b/src/lib-http/http-client-peer.c	Thu Jun 27 20:24:45 2013 +0300
@@ -106,9 +106,8 @@
 	/* find the least busy connection */
 	array_foreach(&peer->conns, conn_idx) {
 		if (http_client_connection_is_ready(*conn_idx)) {
-			unsigned int waiting = array_count(&(*conn_idx)->request_wait_list);
-			if ((*conn_idx)->pending_request != NULL)
-				waiting++;
+			unsigned int waiting = http_client_connection_count_pending(*conn_idx);
+
 			if (waiting < min_waiting) {
 				min_waiting = waiting;
 				conn = *conn_idx;
diff -r af23c7a899a9 -r cf9024b01720 src/lib-http/http-client-private.h
--- a/src/lib-http/http-client-private.h	Thu Jun 27 18:04:04 2013 +0300
+++ b/src/lib-http/http-client-private.h	Thu Jun 27 20:24:45 2013 +0300
@@ -218,6 +218,8 @@
 	http_client_connection_create(struct http_client_peer *peer);
 void http_client_connection_ref(struct http_client_connection *conn);
 void http_client_connection_unref(struct http_client_connection **_conn);
+unsigned int
+http_client_connection_count_pending(struct http_client_connection *conn);
 bool http_client_connection_is_ready(struct http_client_connection *conn);
 bool http_client_connection_is_idle(struct http_client_connection *conn);
 bool http_client_connection_next_request(struct http_client_connection *conn);


More information about the dovecot-cvs mailing list