From f0f1cfab5c04e87055f6252ba9550c33c2eb8ca5 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sat, 12 Nov 2011 01:13:55 +0900 Subject: [PATCH] Use util::strifind instead of std::toLower and std::string::find. --- src/HttpRequest.cc | 5 ++--- src/HttpServer.cc | 14 ++++++++++---- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/HttpRequest.cc b/src/HttpRequest.cc index a9262c39..7f8191fb 100644 --- a/src/HttpRequest.cc +++ b/src/HttpRequest.cc @@ -445,10 +445,9 @@ bool HttpRequest::conditionalRequest() const static const char A2_IF_NONE_MATCH[] = "if-none-match"; for(std::vector::const_iterator i = headers_.begin(), eoi = headers_.end(); i != eoi; ++i) { - std::string hd = util::toLower(*i); - if(util::startsWith(hd.begin(), hd.end(), + if(util::istartsWith((*i).begin(), (*i).end(), A2_IF_MOD_SINCE, vend(A2_IF_MOD_SINCE)-1) || - util::startsWith(hd.begin(), hd.end(), + util::istartsWith((*i).begin(), (*i).end(), A2_IF_NONE_MATCH, vend(A2_IF_NONE_MATCH)-1)) { return true; } diff --git a/src/HttpServer.cc b/src/HttpServer.cc index cd2418fc..f653620d 100644 --- a/src/HttpServer.cc +++ b/src/HttpServer.cc @@ -93,12 +93,18 @@ SharedHandle HttpServer::receiveRequest() lastRequestHeader_->findAsUInt(HttpHeader::CONTENT_LENGTH); headerProcessor_->clear(); - std::string connection = - util::toLower(lastRequestHeader_->find(HttpHeader::CONNECTION)); + const std::string& connection = + lastRequestHeader_->find(HttpHeader::CONNECTION); acceptsPersistentConnection_ = - connection.find(HttpHeader::CLOSE) == std::string::npos && + util::strifind(connection.begin(), + connection.end(), + HttpHeader::CLOSE.begin(), + HttpHeader::CLOSE.end()) == connection.end() && (lastRequestHeader_->getVersion() == HttpHeader::HTTP_1_1 || - connection.find("keep-alive") != std::string::npos); + util::strifind(connection.begin(), + connection.end(), + HttpHeader::KEEP_ALIVE.begin(), + HttpHeader::KEEP_ALIVE.end()) != connection.end()); std::vector acceptEncodings; const std::string& acceptEnc =