diff options
author | marja@chromium.org <marja@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-15 09:30:09 +0000 |
---|---|---|
committer | marja@chromium.org <marja@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-15 09:30:09 +0000 |
commit | 6c0e890267f030dc126971ce696e629df0680b80 (patch) | |
tree | c936b4d28446af3fa01d3ee6ba91477752be5011 /chrome/browser/first_run | |
parent | 1ef1a1fcd0f6b2e8349fcbc4ddc91732a6a8f870 (diff) | |
download | chromium_src-6c0e890267f030dc126971ce696e629df0680b80.zip chromium_src-6c0e890267f030dc126971ce696e629df0680b80.tar.gz chromium_src-6c0e890267f030dc126971ce696e629df0680b80.tar.bz2 |
Fix attempt for the double-SessionRestoreImpl problem.
The problem is that BrowserInit::ProcessCommandLineAlreadyRunning gets called too
early, before launching the first profile during normal startup.
BUG=111238
TEST=NONE
Review URL: http://codereview.chromium.org/9365049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122065 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/first_run')
-rw-r--r-- | chrome/browser/first_run/try_chrome_dialog_view.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/chrome/browser/first_run/try_chrome_dialog_view.cc b/chrome/browser/first_run/try_chrome_dialog_view.cc index f1da73d..71135a7 100644 --- a/chrome/browser/first_run/try_chrome_dialog_view.cc +++ b/chrome/browser/first_run/try_chrome_dialog_view.cc @@ -227,12 +227,14 @@ TryChromeDialogView::Result TryChromeDialogView::ShowModal( SetToastRegion(popup_->GetNativeView(), preferred.width(), preferred.height()); - // Time to show the window in a modal loop. We don't want this chrome - // instance trying to serve WM_COPYDATA requests, as we'll surely crash. - process_singleton->Lock(popup_->GetNativeView()); + // Time to show the window in a modal loop. The ProcessSingleton should + // already be locked and it will not process WM_COPYDATA requests. Change the + // window to bring to foreground if a request arrives. + CHECK(process_singleton->locked()); + process_singleton->SetForegroundWindow(popup_->GetNativeView()); popup_->Show(); MessageLoop::current()->Run(); - process_singleton->Unlock(); + process_singleton->SetForegroundWindow(NULL); return result_; } |