Index: chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc |
diff --git a/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc b/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc |
index c980c14d4b6d0c146c20345aa2913a74468e5bd6..d13026ad06dc947c9ed316efc79840b1deb0acf6 100644 |
--- a/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc |
+++ b/chrome/browser/ui/webui/md_downloads/md_downloads_dom_handler.cc |
@@ -131,6 +131,8 @@ void MdDownloadsDOMHandler::RegisterMessages() { |
web_ui()->RegisterMessageCallback("openDownloadsFolder", |
base::Bind(&MdDownloadsDOMHandler::HandleOpenDownloadsFolder, |
weak_ptr_factory_.GetWeakPtr())); |
+ |
+ Observe(GetWebUIWebContents()); |
} |
void MdDownloadsDOMHandler::OnJavascriptDisallowed() { |
@@ -139,6 +141,12 @@ void MdDownloadsDOMHandler::OnJavascriptDisallowed() { |
CheckForRemovedFiles(); |
} |
+void MdDownloadsDOMHandler::RenderProcessGone(base::TerminationStatus status) { |
+ // TODO(dbeam): WebUI + WebUIMessageHandler should do this automatically. |
+ // http://crbug.com/610450 |
+ DisallowJavascript(); |
+} |
+ |
void MdDownloadsDOMHandler::HandleGetDownloads(const base::ListValue* args) { |
AllowJavascript(); |