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

Unified Diff: chrome/browser/prerender/prerender_link_manager.cc

Issue 12253035: Guard against duplicate adds in PrerenderLinkManager. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: fixity Created 7 years, 10 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/prerender/prerender_link_manager.cc
diff --git a/chrome/browser/prerender/prerender_link_manager.cc b/chrome/browser/prerender/prerender_link_manager.cc
index 8b099b9a8a9e663d14f4d4c65b0a0dac2837984a..d27a81e9264d230db4a31b1ea9a4d37685b70009 100644
--- a/chrome/browser/prerender/prerender_link_manager.cc
+++ b/chrome/browser/prerender/prerender_link_manager.cc
@@ -67,9 +67,11 @@ void PrerenderLinkManager::OnAddPrerender(int launcher_child_id,
const content::Referrer& referrer,
const gfx::Size& size,
int render_view_route_id) {
- DCHECK_EQ(static_cast<LinkPrerender*>(NULL),
- FindByLauncherChildIdAndPrerenderId(launcher_child_id,
- prerender_id));
+ // TODO(gavinp): Determine why WebKit appears to be sending duplicate adds,
+ // and prevent it.
+ if (FindByLauncherChildIdAndPrerenderId(launcher_child_id, prerender_id))
+ return;
+
content::RenderProcessHost* rph =
content::RenderProcessHost::FromID(launcher_child_id);
// Guests inside <webview> do not support cross-process navigation and so we
« no previous file with comments | « no previous file | chrome/browser/prerender/prerender_unittest.cc » ('j') | chrome/browser/prerender/prerender_unittest.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698