Mercurial > dovecot > core-2.2
changeset 16731:abd565369b8f
lib-http: http-client: Connection was using wrong request index in request_wait_list to continue sending outgoing payload.
author | Stephan Bosch <stephan@rename-it.nl> |
---|---|
date | Sun, 15 Sep 2013 03:28:21 +0300 |
parents | 7b775a06c38f |
children | 0bcbc30b81b7 |
files | src/lib-http/http-client-connection.c |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-http/http-client-connection.c Sun Sep 15 03:27:31 2013 +0300 +++ b/src/lib-http/http-client-connection.c Sun Sep 15 03:28:21 2013 +0300 @@ -241,7 +241,9 @@ http_client_connection_debug(conn, "Expected 100-continue response timed out; sending payload anyway"); - req_idx = array_idx(&conn->request_wait_list, 0); + i_assert(array_count(&conn->request_wait_list) > 0); + req_idx = array_idx(&conn->request_wait_list, + array_count(&conn->request_wait_list)-1); req = req_idx[0]; conn->payload_continue = TRUE; @@ -673,7 +675,8 @@ } if (array_count(&conn->request_wait_list) > 0 && conn->output_locked) { - req_idx = array_idx(&conn->request_wait_list, 0); + req_idx = array_idx(&conn->request_wait_list, + array_count(&conn->request_wait_list)-1); req = req_idx[0]; if (!req->payload_sync || conn->payload_continue) {