diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-30 04:13:53 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-30 04:13:53 +0000 |
commit | 9ed74bd1ca47a3cf0ac8ac89f397eaf7e5c7a3e5 (patch) | |
tree | 5fe946968099aa2109db8545e627d2980f149400 | |
parent | 45b946a1e2146cdd5362eb1062f63916ca86ff38 (diff) | |
download | chromium_src-9ed74bd1ca47a3cf0ac8ac89f397eaf7e5c7a3e5.zip chromium_src-9ed74bd1ca47a3cf0ac8ac89f397eaf7e5c7a3e5.tar.gz chromium_src-9ed74bd1ca47a3cf0ac8ac89f397eaf7e5c7a3e5.tar.bz2 |
Print Preview: Make sure web_ui() is non-NULL before notifying the
PrintPreviewUI that the source tab has navigated.
Speculative fix for the crash in Linux Views Debug bots.
BUG=87964
TEST=PrintPreviewWebUITest.TestPrintPreview
R=thestig@chromium.org
Review URL: http://codereview.chromium.org/7284023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91088 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/printing/print_preview_tab_controller.cc | 2 | ||||
-rw-r--r-- | chrome/browser/ui/webui/print_preview_browsertest.cc | 8 | ||||
-rw-r--r-- | content/browser/webui/web_ui.h | 2 |
3 files changed, 3 insertions, 9 deletions
diff --git a/chrome/browser/printing/print_preview_tab_controller.cc b/chrome/browser/printing/print_preview_tab_controller.cc index 819279b..aef4dd1 100644 --- a/chrome/browser/printing/print_preview_tab_controller.cc +++ b/chrome/browser/printing/print_preview_tab_controller.cc @@ -144,7 +144,7 @@ void PrintPreviewTabController::Observe(NotificationType type, // chooses to re-open the initiator tab after closing it, as |source_tab| // has navigated to the URL of the initiator tab at this point. Make sure to // verify that |source_tab| really is a print preview tab. - if (IsPrintPreviewTab(source_tab)) { + if (IsPrintPreviewTab(source_tab) && source_tab->web_ui()) { PrintPreviewUI* print_preview_ui = static_cast<PrintPreviewUI*>(source_tab->web_ui()); print_preview_ui->OnNavigation(); diff --git a/chrome/browser/ui/webui/print_preview_browsertest.cc b/chrome/browser/ui/webui/print_preview_browsertest.cc index dd047c2..1a99380 100644 --- a/chrome/browser/ui/webui/print_preview_browsertest.cc +++ b/chrome/browser/ui/webui/print_preview_browsertest.cc @@ -72,13 +72,7 @@ class PrintPreviewWebUITest } }; -// http://crbug.com/87964 -#if defined(OS_CHROMEOS) -#define MAYBE_TestPrintPreview DISABLED_TestPrintPreview -#else -#define MAYBE_TestPrintPreview TestPrintPreview -#endif // defined(OS_CHROMEOS) -IN_PROC_BROWSER_TEST_F(PrintPreviewWebUITest, MAYBE_TestPrintPreview) { +IN_PROC_BROWSER_TEST_F(PrintPreviewWebUITest, TestPrintPreview) { ASSERT_TRUE(RunJavascriptTest("testPrintPreview", *Value::CreateBooleanValue(HasPDFLib()))); } diff --git a/content/browser/webui/web_ui.h b/content/browser/webui/web_ui.h index d107792..8c41e4c 100644 --- a/content/browser/webui/web_ui.h +++ b/content/browser/webui/web_ui.h @@ -26,7 +26,7 @@ class TabContents; class Value; // A WebUI sets up the datasources and message handlers for a given HTML-based -// UI. It is contained by a WebUIManager. +// UI. // // NOTE: If you're creating a new WebUI for Chrome code, make sure you extend // ChromeWebUI. |