From b2c04cf954eee0ff39c2b8ad339c84ce299a4106 Mon Sep 17 00:00:00 2001 From: David Rose Date: Thu, 29 May 2003 21:04:22 +0000 Subject: [PATCH] whoops, timeout when connecting through proxy --- panda/src/downloader/httpChannel.cxx | 60 +++++++++++++++++++--------- 1 file changed, 41 insertions(+), 19 deletions(-) diff --git a/panda/src/downloader/httpChannel.cxx b/panda/src/downloader/httpChannel.cxx index 8c7347779a..0a0f594825 100644 --- a/panda/src/downloader/httpChannel.cxx +++ b/panda/src/downloader/httpChannel.cxx @@ -799,6 +799,7 @@ run_http_proxy_ready() { // All done sending request. _state = S_http_proxy_request_sent; + _sent_request_time = ClockObject::get_global_clock()->get_real_time(); return false; } @@ -1318,12 +1319,19 @@ run_reading_header() { _response_type = RT_http_hangup; } - } else if (ClockObject::get_global_clock()->get_real_time() - - _sent_request_time > get_http_timeout()) { - // Time to give up. - downloader_cat.info() - << "Timeout waiting for " << _request.get_url().get_server_and_port() << ".\n"; - _state = S_try_next_proxy; + } else { + double elapsed = + ClockObject::get_global_clock()->get_real_time() - + _sent_request_time; + if (elapsed > get_http_timeout()) { + // Time to give up. + downloader_cat.info() + << "Timeout waiting for " + << _request.get_url().get_server_and_port() + << " in run_reading_header (" << elapsed + << " seconds elapsed).\n"; + _state = S_try_next_proxy; + } } return true; } @@ -2040,13 +2048,20 @@ server_getline_failsafe(string &str) { // Try again, once. _response_type = RT_hangup; } - - } else if (ClockObject::get_global_clock()->get_real_time() - - _sent_request_time > get_http_timeout()) { - // Time to give up. - downloader_cat.info() - << "Timeout waiting for " << _request.get_url().get_server_and_port() << ".\n"; - _state = S_try_next_proxy; + + } else { + double elapsed = + ClockObject::get_global_clock()->get_real_time() - + _sent_request_time; + if (elapsed > get_http_timeout()) { + // Time to give up. + downloader_cat.info() + << "Timeout waiting for " + << _request.get_url().get_server_and_port() + << " in server_getline_failsafe (" << elapsed + << " seconds elapsed).\n"; + _state = S_try_next_proxy; + } } return false; @@ -2105,12 +2120,19 @@ server_get_failsafe(string &str, size_t num_bytes) { _response_type = RT_hangup; } - } else if (ClockObject::get_global_clock()->get_real_time() - - _sent_request_time > get_http_timeout()) { - // Time to give up. - downloader_cat.info() - << "Timeout waiting for " << _request.get_url().get_server_and_port() << ".\n"; - _state = S_try_next_proxy; + } else { + double elapsed = + ClockObject::get_global_clock()->get_real_time() - + _sent_request_time; + if (elapsed > get_http_timeout()) { + // Time to give up. + downloader_cat.info() + << "Timeout waiting for " + << _request.get_url().get_server_and_port() + << " in server_get_failsafe (" << elapsed + << " seconds elapsed).\n"; + _state = S_try_next_proxy; + } } return false;