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

Unified Diff: chrome/browser/extensions/extension_host.cc

Issue 10412061: Fix crashes in DownloadRequestLimiter when extension popups/bubbles initiate downloads automatically (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: comment Created 8 years, 7 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/extensions/extension_host.cc
diff --git a/chrome/browser/extensions/extension_host.cc b/chrome/browser/extensions/extension_host.cc
index ff721c6958adf61d3824fcf6d00fd95618694a09..c6f231b0e62e14616b2bdff8cc9a73d32d3ebd43 100644
--- a/chrome/browser/extensions/extension_host.cc
+++ b/chrome/browser/extensions/extension_host.cc
@@ -58,6 +58,7 @@
using WebKit::WebDragOperation;
using WebKit::WebDragOperationsMask;
+using content::DownloadItem;
using content::NativeWebKeyboardEvent;
using content::OpenURLParams;
using content::RenderViewHost;
@@ -409,6 +410,17 @@ void ExtensionHost::CloseContents(WebContents* contents) {
}
}
+void ExtensionHost::OnStartDownload(
+ WebContents* source, DownloadItem* download) {
+ Profile* profile = Profile::FromBrowserContext(source->GetBrowserContext());
+ Browser* browser = browser::FindTabbedBrowser(
+ profile, false); // Match incognito exactly.
+ if (!browser && view())
+ browser = view()->browser();
+ if (browser)
+ browser->OnStartDownload(source, download);
+}
+
void ExtensionHost::WillRunJavaScriptDialog() {
ExtensionProcessManager* pm =
ExtensionSystem::Get(profile_)->process_manager();

Powered by Google App Engine
This is Rietveld 408576698