From ef5306ef2dc2460f0a0af8498f80d712ab3ec0b6 Mon Sep 17 00:00:00 2001 From: "creis@chromium.org" <creis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> Date: Tue, 15 Oct 2013 19:38:18 +0000 Subject: Clean up ResourceHandler API. 1. Move URLRequest member to ResourceHandler base class and add convenience functions for subclasses. 2. Make OnWillRead take a scoped_refptr to avoid leaking the buffer. (Attempt 2, after being reverted for possibly unrelated crashes.) BUG=295239 TEST=No behavior change. TBR=darin Review URL: https://codereview.chromium.org/26420005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228741 0039d316-1c4b-4281-b951-d872f2087c98 --- content/browser/loader/throttling_resource_handler.cc | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) (limited to 'content/browser/loader/throttling_resource_handler.cc') diff --git a/content/browser/loader/throttling_resource_handler.cc b/content/browser/loader/throttling_resource_handler.cc index 8bb5446..23f77da 100644 --- a/content/browser/loader/throttling_resource_handler.cc +++ b/content/browser/loader/throttling_resource_handler.cc @@ -4,7 +4,7 @@ #include "content/browser/loader/throttling_resource_handler.h" -#include "content/public/browser/resource_request_info.h" +#include "content/browser/loader/resource_request_info_impl.h" #include "content/public/browser/resource_throttle.h" #include "content/public/common/resource_response.h" @@ -14,9 +14,8 @@ ThrottlingResourceHandler::ThrottlingResourceHandler( scoped_ptr<ResourceHandler> next_handler, net::URLRequest* request, ScopedVector<ResourceThrottle> throttles) - : LayeredResourceHandler(next_handler.Pass()), + : LayeredResourceHandler(request, next_handler.Pass()), deferred_stage_(DEFERRED_NONE), - request_(request), throttles_(throttles.Pass()), index_(0), cancelled_by_resource_throttle_(false) { @@ -141,8 +140,7 @@ void ThrottlingResourceHandler::ResumeStart() { deferred_url_ = GURL(); bool defer = false; - const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); - if (!OnWillStart(info->GetRequestID(), url, &defer)) { + if (!OnWillStart(GetRequestID(), url, &defer)) { controller()->Cancel(); } else if (!defer) { controller()->Resume(); @@ -158,9 +156,7 @@ void ThrottlingResourceHandler::ResumeRedirect() { deferred_response_.swap(response); bool defer = false; - const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); - if (!OnRequestRedirected(info->GetRequestID(), new_url, response.get(), - &defer)) { + if (!OnRequestRedirected(GetRequestID(), new_url, response.get(), &defer)) { controller()->Cancel(); } else if (!defer) { controller()->Resume(); @@ -174,8 +170,7 @@ void ThrottlingResourceHandler::ResumeResponse() { deferred_response_.swap(response); bool defer = false; - const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); - if (!OnResponseStarted(info->GetRequestID(), response.get(), &defer)) { + if (!OnResponseStarted(GetRequestID(), response.get(), &defer)) { controller()->Cancel(); } else if (!defer) { controller()->Resume(); -- cgit v1.1