summaryrefslogtreecommitdiffstats
path: root/chrome/browser/download/save_file_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/download/save_file_manager.cc')
-rw-r--r--chrome/browser/download/save_file_manager.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/chrome/browser/download/save_file_manager.cc b/chrome/browser/download/save_file_manager.cc
index 631b55d..940e878 100644
--- a/chrome/browser/download/save_file_manager.cc
+++ b/chrome/browser/download/save_file_manager.cc
@@ -215,10 +215,14 @@ void SaveFileManager::RemoveSaveFile(int save_id, const std::wstring& save_url,
// only on the UI thread.
SavePackage* SaveFileManager::GetSavePackageFromRenderIds(
int render_process_id, int render_view_id) {
- WebContents* contents = tab_util::GetWebContentsByID(render_process_id,
+ TabContents* contents = tab_util::GetTabContentsByID(render_process_id,
render_view_id);
- if (contents)
- return contents->save_package();
+ if (contents && contents->type() == TAB_CONTENTS_WEB) {
+ // Convert const pointer of WebContents to pointer of WebContents.
+ const WebContents* web_contents = contents->AsWebContents();
+ if (web_contents)
+ return web_contents->save_package();
+ }
return NULL;
}