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 ea450129b01d4daeb0a5434c17b2c372562a05fb..da68f892f2c793cbf602a75554e4404cdc2f715b 100644 |
--- a/chrome/browser/prerender/prerender_link_manager.cc |
+++ b/chrome/browser/prerender/prerender_link_manager.cc |
@@ -98,7 +98,9 @@ void PrerenderLinkManager::OnCancelPrerender(int child_id, int prerender_id) { |
DVLOG(5) << "... canceling a prerender that doesn't exist."; |
return; |
} |
- PrerenderHandle* prerender_handle = id_to_handle_iter->second; |
+ |
+ scoped_ptr<PrerenderHandle> prerender_handle(id_to_handle_iter->second); |
+ ids_to_handle_map_.erase(id_to_handle_iter); |
prerender_handle->OnCancel(); |
// Because OnCancel() can remove the prerender from the map, we need to |