Index: chrome/renderer/prerender/prerender_dispatcher.cc |
diff --git a/chrome/renderer/prerender/prerender_dispatcher.cc b/chrome/renderer/prerender/prerender_dispatcher.cc |
index a787a701982fc922c6d9c07bace611e40ada1a17..6cb7ff9a50a3a914599416bb98a980c482dfdfe7 100644 |
--- a/chrome/renderer/prerender/prerender_dispatcher.cc |
+++ b/chrome/renderer/prerender/prerender_dispatcher.cc |
@@ -59,6 +59,20 @@ void PrerenderDispatcher::OnPrerenderStopLoading(int prerender_id) { |
prerender.didSendLoadForPrerender(); |
} |
+void PrerenderDispatcher::OnPrerenderDomContentLoaded(int prerender_id) { |
+ std::map<int, WebPrerender>::iterator it = prerenders_.find(prerender_id); |
+ if (it == prerenders_.end()) |
+ return; |
+ |
+ WebPrerender& prerender = it->second; |
+ DCHECK(!prerender.isNull()) |
+ << "OnPrerenderDomContentLoaded shouldn't be called from a unit test," |
+ << " the only context in which a WebPrerender in the dispatcher can be" |
+ << " null."; |
+ |
+ prerender.didSendDOMContentLoadedForPrerender(); |
+} |
+ |
void PrerenderDispatcher::OnPrerenderAddAlias(const GURL& alias) { |
running_prerender_urls_.insert(alias); |
} |
@@ -97,6 +111,8 @@ bool PrerenderDispatcher::OnControlMessageReceived( |
IPC_MESSAGE_HANDLER(PrerenderMsg_OnPrerenderStart, OnPrerenderStart) |
IPC_MESSAGE_HANDLER(PrerenderMsg_OnPrerenderStopLoading, |
OnPrerenderStopLoading) |
+ IPC_MESSAGE_HANDLER(PrerenderMsg_OnPrerenderDomContentLoaded, |
+ OnPrerenderDomContentLoaded) |
IPC_MESSAGE_HANDLER(PrerenderMsg_OnPrerenderAddAlias, OnPrerenderAddAlias) |
IPC_MESSAGE_HANDLER(PrerenderMsg_OnPrerenderRemoveAliases, |
OnPrerenderRemoveAliases) |