Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(612)

Unified Diff: chrome/browser/renderer_host/resource_dispatcher_host.cc

Issue 5912001: Add PrerenderResourceHandler and hook it into the ResourceDispatcherHost.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: More comments and fixing nits Created 9 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/renderer_host/resource_dispatcher_host.cc
diff --git a/chrome/browser/renderer_host/resource_dispatcher_host.cc b/chrome/browser/renderer_host/resource_dispatcher_host.cc
index 93749f344a27c552a064fd0959e57095d0952e0a..7a84fc6a865f7ec116bf45e2b31867bb5025dac6 100644
--- a/chrome/browser/renderer_host/resource_dispatcher_host.cc
+++ b/chrome/browser/renderer_host/resource_dispatcher_host.cc
@@ -31,6 +31,7 @@
#include "chrome/browser/net/chrome_url_request_context.h"
#include "chrome/browser/net/url_request_tracking.h"
#include "chrome/browser/plugin_service.h"
+#include "chrome/browser/prerender/prerender_resource_handler.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/renderer_host/async_resource_handler.h"
#include "chrome/browser/renderer_host/buffered_resource_handler.h"
@@ -444,6 +445,15 @@ void ResourceDispatcherHost::BeginRequest(
upload_size = request_data.upload_data->GetContentLength();
}
+ // Install a PrerenderResourceHandler if the requested URL could
+ // be prerendered. This should be in front of the [a]syncResourceHandler,
+ // but after the BufferedResourceHandler since it depends on the MIME
+ // sniffing capabilities in the BufferedResourceHandler.
+ PrerenderResourceHandler* pre_handler = PrerenderResourceHandler::MaybeCreate(
+ *request, context, handler);
+ if (pre_handler)
+ handler = pre_handler;
+
// Install a CrossSiteResourceHandler if this request is coming from a
// RenderViewHost with a pending cross-site request. We only check this for
// MAIN_FRAME requests. Unblock requests only come from a blocked page, do

Powered by Google App Engine
This is Rietveld 408576698