diff options
author | finnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-17 20:59:29 +0000 |
---|---|---|
committer | finnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-17 20:59:29 +0000 |
commit | 2627b1ed1f32f89609797290d6222b748b657757 (patch) | |
tree | 8df5fd599e92345cee7f2774ff03a3c3e2393987 | |
parent | 5793fac1f201a4081f1d2c7fd5aadcf76837b3d1 (diff) | |
download | chromium_src-2627b1ed1f32f89609797290d6222b748b657757.zip chromium_src-2627b1ed1f32f89609797290d6222b748b657757.tar.gz chromium_src-2627b1ed1f32f89609797290d6222b748b657757.tar.bz2 |
Fix a crash in HungRendererView. |tab_contents_| can be set to NULL when TabContents is destroyed, when RenderViewIsGone and when the tab becomes responsive again. If we happen to press the button just after this happens, we'll get a crash.
BUG=http://crbug.com/52293
TEST=None
Review URL: http://codereview.chromium.org/3165022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56419 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/views/hung_renderer_view.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/chrome/browser/views/hung_renderer_view.cc b/chrome/browser/views/hung_renderer_view.cc index dd0d1a2..6f4284f 100644 --- a/chrome/browser/views/hung_renderer_view.cc +++ b/chrome/browser/views/hung_renderer_view.cc @@ -318,9 +318,11 @@ views::View* HungRendererDialogView::GetContentsView() { void HungRendererDialogView::ButtonPressed( views::Button* sender, const views::Event& event) { if (sender == kill_button_) { - // Kill the process. - TerminateProcess(contents_->GetRenderProcessHost()->GetHandle(), - ResultCodes::HUNG); + if (!contents_) { + // Kill the process. + TerminateProcess(contents_->GetRenderProcessHost()->GetHandle(), + ResultCodes::HUNG); + } } } |