Index: chrome/browser/prerender/prerender_manager.cc |
diff --git a/chrome/browser/prerender/prerender_manager.cc b/chrome/browser/prerender/prerender_manager.cc |
index b33554a8f7dd19c5082e0f6f1284034b52ec1dc5..6788fbf39772aa9ac625fdc4f9c7790c0df7d072 100644 |
--- a/chrome/browser/prerender/prerender_manager.cc |
+++ b/chrome/browser/prerender/prerender_manager.cc |
@@ -238,8 +238,9 @@ PrerenderHandle* PrerenderManager::AddPrerenderFromLinkRelPrerender( |
} |
} |
- // Unit tests pass in a process_id == -1. |
+ bool is_same_domain = false; |
SessionStorageNamespace* session_storage_namespace = NULL; |
+ // Unit tests pass in a process_id == -1. |
if (process_id != -1) { |
RenderViewHost* source_render_view_host = |
RenderViewHost::FromID(process_id, route_id); |
@@ -249,13 +250,17 @@ PrerenderHandle* PrerenderManager::AddPrerenderFromLinkRelPrerender( |
WebContents::FromRenderViewHost(source_render_view_host); |
if (!source_web_contents) |
return NULL; |
+ |
+ if (source_web_contents->GetURL().host() == url.host()) |
dominich
2012/09/13 20:03:36
shorter: is_same_domain = source_web_contents->Get
gavinp
2012/09/14 02:00:42
Done.
|
+ is_same_domain = true; |
// TODO(ajwong): This does not correctly handle storage for isolated apps. |
session_storage_namespace = |
source_web_contents->GetController() |
.GetDefaultSessionStorageNamespace(); |
} |
- return AddPrerender(ORIGIN_LINK_REL_PRERENDER, |
+ return AddPrerender(is_same_domain ? ORIGIN_LINK_REL_PRERENDER_SAMEDOMAIN |
+ : ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN, |
process_id, url, referrer, size, |
session_storage_namespace); |
#endif |
@@ -912,7 +917,7 @@ PrerenderHandle* PrerenderManager::AddPrerender( |
if (!IsEnabled()) |
return NULL; |
- if (origin == ORIGIN_LINK_REL_PRERENDER && |
+ if (origin == ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN && |
IsGoogleSearchResultURL(referrer.url)) { |
origin = ORIGIN_GWS_PRERENDER; |
dominich
2012/09/13 20:03:36
GWS could be same-domain.
gavinp
2012/09/14 02:00:42
That's true... But the goal here is to gather stat
dominich
2012/09/14 14:40:45
I'm suggesting changing the conditional, not the e
gavinp
2012/09/14 21:10:47
DOH. Reading comprehension fail. Thanks. I have no
|
} |