summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_init.cc
diff options
context:
space:
mode:
authorsky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-11 03:36:50 +0000
committersky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-11 03:36:50 +0000
commit4831051e6bce5f55c3954bea208c0ce118ea25ff (patch)
tree2e322210d62b1078b6c5c6279ddd597c00640312 /chrome/browser/browser_init.cc
parentbbe50755c1a8d0cdea4b3b0699b70806dfae2e23 (diff)
downloadchromium_src-4831051e6bce5f55c3954bea208c0ce118ea25ff.zip
chromium_src-4831051e6bce5f55c3954bea208c0ce118ea25ff.tar.gz
chromium_src-4831051e6bce5f55c3954bea208c0ce118ea25ff.tar.bz2
Fixes two session restore bugs:
. If the user launches incognito we don't attempt to restore last session and instead just do default launch behavior (new tab page). . Don't show the session restore info bar when launched incognito. I'm assuming that if the user launched in incognito they were previously running incognito so that there is nothing to restore. BUG=4381 5119 TEST=turn on session restore and launch with --incognito, make sure the incognito window comes up. Review URL: http://codereview.chromium.org/13368 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6776 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_init.cc')
-rw-r--r--chrome/browser/browser_init.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/chrome/browser/browser_init.cc b/chrome/browser/browser_init.cc
index 6084a53..0d6d128 100644
--- a/chrome/browser/browser_init.cc
+++ b/chrome/browser/browser_init.cc
@@ -115,6 +115,13 @@ SessionStartupPref GetSessionStartupPref(Profile* profile,
SessionStartupPref pref = SessionStartupPref::GetStartupPref(profile);
if (command_line.HasSwitch(switches::kRestoreLastSession))
pref.type = SessionStartupPref::LAST;
+ if (command_line.HasSwitch(switches::kIncognito) &&
+ pref.type == SessionStartupPref::LAST) {
+ // We don't store session information when incognito. If the user has
+ // chosen to restore last session and launched incognito, fallback to
+ // default launch behavior.
+ pref.type = SessionStartupPref::DEFAULT;
+ }
return pref;
}
@@ -546,7 +553,10 @@ Browser* BrowserInit::LaunchWithProfile::OpenURLsInBrowser(
void BrowserInit::LaunchWithProfile::AddCrashedInfoBarIfNecessary(
TabContents* tab) {
- if (!profile_->DidLastSessionExitCleanly()) {
+ // Assume that if the user is launching incognito they were previously
+ // running incognito so that we have nothing to restore from.
+ if (!profile_->DidLastSessionExitCleanly() &&
+ !profile_->IsOffTheRecord()) {
// The last session didn't exit cleanly. Show an infobar to the user
// so that they can restore if they want. The delegate deletes itself when
// it is closed.