summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-20 00:11:38 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-20 00:11:38 +0000
commit43b4721695cd8c07dfa23433c67e4d62dbf4ce7c (patch)
tree83c25260e8dd7ebc8468ca19148f93c08bc02b76 /chrome
parentee592d4c9d0b419038e29115c5b32bac13251221 (diff)
downloadchromium_src-43b4721695cd8c07dfa23433c67e4d62dbf4ce7c.zip
chromium_src-43b4721695cd8c07dfa23433c67e4d62dbf4ce7c.tar.gz
chromium_src-43b4721695cd8c07dfa23433c67e4d62dbf4ce7c.tar.bz2
Speculative crash fix.
While investigating another bug, I tried changing the PostTask(CloseNow) to a PostDelayedTask(CloseNow) in WidgetWin. This exposed a crash in the cookie prompt if I clicked the Allow or Block buttons more than once. R=sky BUG=none TEST=none Review URL: http://codereview.chromium.org/650067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39519 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/cookie_modal_dialog.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/chrome/browser/cookie_modal_dialog.cc b/chrome/browser/cookie_modal_dialog.cc
index 1200d3f..579698e 100644
--- a/chrome/browser/cookie_modal_dialog.cc
+++ b/chrome/browser/cookie_modal_dialog.cc
@@ -73,13 +73,17 @@ bool CookiePromptModalDialog::IsValid() {
void CookiePromptModalDialog::AllowSiteData(bool remember,
bool session_expire) {
- delegate_->AllowSiteData(remember, session_expire);
- delegate_ = NULL; // It can be deleted at any point now.
+ if (delegate_) {
+ delegate_->AllowSiteData(remember, session_expire);
+ delegate_ = NULL; // It can be deleted at any point now.
+ }
}
void CookiePromptModalDialog::BlockSiteData(bool remember) {
- delegate_->BlockSiteData(remember);
- delegate_ = NULL; // It can be deleted at any point now.
+ if (delegate_) {
+ delegate_->BlockSiteData(remember);
+ delegate_ = NULL; // It can be deleted at any point now.
+ }
}
// static