summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordarin@google.com <darin@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-15 07:12:56 +0000
committerdarin@google.com <darin@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-15 07:12:56 +0000
commitda2e99dcc49c7847e8d9f4c410ac0078dc7ee202 (patch)
tree034acf2a77eeb350d35fa97aa98889b46541fe6b
parentb47f32e8c6b4d039778dbd1b532b192af5edecd5 (diff)
downloadchromium_src-da2e99dcc49c7847e8d9f4c410ac0078dc7ee202.zip
chromium_src-da2e99dcc49c7847e8d9f4c410ac0078dc7ee202.tar.gz
chromium_src-da2e99dcc49c7847e8d9f4c410ac0078dc7ee202.tar.bz2
Just like HandleWorkMessage, we have to be concerned with HandleTimerMessage
being called outside the context of our Run method. In such cases, just kill the timer, and return. This fixes the crash that was observed with the Firefox3 importer unit test on Vista. TBR=jar git-svn-id: svn://svn.chromium.org/chrome/trunk/src@933 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/message_pump_win.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/base/message_pump_win.cc b/base/message_pump_win.cc
index 6be4e0f..d07b4f7 100644
--- a/base/message_pump_win.cc
+++ b/base/message_pump_win.cc
@@ -243,6 +243,12 @@ void MessagePumpWin::HandleWorkMessage() {
void MessagePumpWin::HandleTimerMessage() {
KillTimer(message_hwnd_, reinterpret_cast<UINT_PTR>(this));
+ // If we are being called outside of the context of Run, then don't do
+ // anything. This could correspond to a MessageBox call or something of
+ // that sort.
+ if (!state_)
+ return;
+
state_->delegate->DoDelayedWork();
}