From 72e475dfdeaa4a87dff0eef994e7814e94c40363 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 28 Feb 2010 16:04:52 +0000 Subject: 2010-03-01 Tatsuhiro Tsujikawa Avoid to calculate end() iterator in each loop. std::deque is particularly slow. Make sure that recalculate end iterator if element is erased during loop. --- src/HttpConnection.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/HttpConnection.cc') diff --git a/src/HttpConnection.cc b/src/HttpConnection.cc index 7e723fab..2c8d0176 100644 --- a/src/HttpConnection.cc +++ b/src/HttpConnection.cc @@ -152,8 +152,8 @@ SharedHandle HttpConnection::receiveResponse() bool HttpConnection::isIssued(const SharedHandle& segment) const { - for(HttpRequestEntries::const_iterator itr = outstandingHttpRequests.begin(); - itr != outstandingHttpRequests.end(); ++itr) { + for(HttpRequestEntries::const_iterator itr = outstandingHttpRequests.begin(), + eoi = outstandingHttpRequests.end(); itr != eoi; ++itr) { SharedHandle httpRequest = (*itr)->getHttpRequest(); if(httpRequest->getSegment() == segment) { return true; -- cgit