Index: chrome/browser/prerender/prerender_manager.cc |
diff --git a/chrome/browser/prerender/prerender_manager.cc b/chrome/browser/prerender/prerender_manager.cc |
index 4d0da429d74d0580c35892e8824f12e45913a07f..135d039963f9bee22ba73a62058226e2fd51bf6f 100644 |
--- a/chrome/browser/prerender/prerender_manager.cc |
+++ b/chrome/browser/prerender/prerender_manager.cc |
@@ -345,37 +345,6 @@ PrerenderHandle* PrerenderManager::AddPrerenderFromLinkRelPrerender( |
.GetDefaultSessionStorageNamespace(); |
} |
- // If the prerender request comes from a recently cancelled prerender that |
- // |this| still owns, then abort the prerender. |
- for (ScopedVector<PrerenderData>::iterator it = to_delete_prerenders_.begin(); |
- it != to_delete_prerenders_.end(); ++it) { |
- PrerenderContents* prerender_contents = (*it)->contents(); |
- int contents_child_id; |
- int contents_route_id; |
- if (prerender_contents->GetChildId(&contents_child_id) && |
- prerender_contents->GetRouteId(&contents_route_id)) { |
- if (contents_child_id == process_id && contents_route_id == route_id) |
- return NULL; |
- } |
- } |
- |
- if (PrerenderData* parent_prerender_data = |
- FindPrerenderDataForChildAndRoute(process_id, route_id)) { |
- // Instead of prerendering from inside of a running prerender, we will defer |
- // this request until its launcher is made visible. |
- if (PrerenderContents* contents = parent_prerender_data->contents()) { |
- PrerenderHandle* prerender_handle = |
- new PrerenderHandle(static_cast<PrerenderData*>(NULL)); |
- scoped_ptr<PrerenderContents::PendingPrerenderInfo> |
- pending_prerender_info(new PrerenderContents::PendingPrerenderInfo( |
- prerender_handle->weak_ptr_factory_.GetWeakPtr(), |
- origin, url, referrer, size)); |
- |
- contents->AddPendingPrerender(pending_prerender_info.Pass()); |
- return prerender_handle; |
- } |
- } |
- |
return AddPrerender(origin, process_id, url, referrer, size, |
session_storage_namespace); |
} |
@@ -590,10 +559,6 @@ WebContents* PrerenderManager::SwapInternal( |
return NULL; |
} |
- int child_id, route_id; |
- CHECK(prerender_data->contents()->GetChildId(&child_id)); |
- CHECK(prerender_data->contents()->GetRouteId(&route_id)); |
- |
// At this point, we've determined that we will use the prerender. |
if (prerender_data->pending_swap()) |
prerender_data->pending_swap()->set_swap_successful(true); |
@@ -614,10 +579,8 @@ WebContents* PrerenderManager::SwapInternal( |
histograms_->RecordPerSessionCount(prerender_contents->origin(), |
++prerenders_per_session_count_); |
histograms_->RecordUsedPrerender(prerender_contents->origin()); |
- prerender_contents->SetFinalStatus(FINAL_STATUS_USED); |
- // Start pending prerender requests from the PrerenderContents, if there are |
- // any. |
+ // Mark prerender as used. |
prerender_contents->PrepareForUse(); |
WebContents* new_web_contents = |
@@ -1289,38 +1252,6 @@ void PrerenderManager::SetPrerenderContentsFactory( |
prerender_contents_factory_.reset(prerender_contents_factory); |
} |
- |
-void PrerenderManager::StartPendingPrerenders( |
- const int process_id, |
- ScopedVector<PrerenderContents::PendingPrerenderInfo>* pending_prerenders, |
- content::SessionStorageNamespace* session_storage_namespace) { |
- for (ScopedVector<PrerenderContents::PendingPrerenderInfo>::iterator |
- it = pending_prerenders->begin(); |
- it != pending_prerenders->end(); ++it) { |
- PrerenderContents::PendingPrerenderInfo* info = *it; |
- PrerenderHandle* existing_prerender_handle = |
- info->weak_prerender_handle.get(); |
- if (!existing_prerender_handle) |
- continue; |
- |
- DCHECK(!existing_prerender_handle->IsPrerendering()); |
- DCHECK(process_id == -1 || session_storage_namespace); |
- |
- scoped_ptr<PrerenderHandle> new_prerender_handle(AddPrerender( |
- info->origin, process_id, |
- info->url, info->referrer, info->size, |
- session_storage_namespace)); |
- if (new_prerender_handle) { |
- // AddPrerender has returned a new prerender handle to us. We want to make |
- // |existing_prerender_handle| active, so move the underlying |
- // PrerenderData to our new handle. |
- existing_prerender_handle->AdoptPrerenderDataFrom( |
- new_prerender_handle.get()); |
- continue; |
- } |
- } |
-} |
- |
void PrerenderManager::SourceNavigatedAway(PrerenderData* prerender_data) { |
// The expiry time of our prerender data will likely change because of |
// this navigation. This requires a resort of active_prerenders_. |
@@ -1572,26 +1503,6 @@ PrerenderManager::PrerenderData* PrerenderManager::FindPrerenderData( |
return NULL; |
} |
-PrerenderManager::PrerenderData* |
-PrerenderManager::FindPrerenderDataForChildAndRoute( |
- const int child_id, const int route_id) { |
- for (ScopedVector<PrerenderData>::iterator it = active_prerenders_.begin(); |
- it != active_prerenders_.end(); ++it) { |
- PrerenderContents* prerender_contents = (*it)->contents(); |
- |
- int contents_child_id; |
- if (!prerender_contents->GetChildId(&contents_child_id)) |
- continue; |
- int contents_route_id; |
- if (!prerender_contents->GetRouteId(&contents_route_id)) |
- continue; |
- |
- if (contents_child_id == child_id && contents_route_id == route_id) |
- return *it; |
- } |
- return NULL; |
-} |
- |
ScopedVector<PrerenderManager::PrerenderData>::iterator |
PrerenderManager::FindIteratorForPrerenderContents( |
PrerenderContents* prerender_contents) { |