diff options
author | prasadt@chromium.org <prasadt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 18:55:53 +0000 |
---|---|---|
committer | prasadt@chromium.org <prasadt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 18:55:53 +0000 |
commit | 3cdacd4e6a2ca4c305c591dac8176828ae2e2b62 (patch) | |
tree | b5c51b6e0db2c1aadb03e80b148b3b9a0c9ef4f6 /chrome/browser/first_run_gtk.cc | |
parent | 980539163f30d19e5adff1538122b1ea6a0e4803 (diff) | |
download | chromium_src-3cdacd4e6a2ca4c305c591dac8176828ae2e2b62.zip chromium_src-3cdacd4e6a2ca4c305c591dac8176828ae2e2b62.tar.gz chromium_src-3cdacd4e6a2ca4c305c591dac8176828ae2e2b62.tar.bz2 |
r46025 reverted r46023 which caused a build break on chromeos.
This change reverts r46025 and fixes the build break which is just a one line
change in chrome/browser/first_run_gtk.cc to move the definition of
Upgrade::new_command_line_ to be inside a #if. Details on the change and code
review feedback for the original CL can be found at
http://codereview.chromium.org/1633021.
BUG=40975
TEST=none
Review URL: http://codereview.chromium.org/1691022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46103 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/first_run_gtk.cc')
-rw-r--r-- | chrome/browser/first_run_gtk.cc | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/chrome/browser/first_run_gtk.cc b/chrome/browser/first_run_gtk.cc index a424d60..2b48d3b 100644 --- a/chrome/browser/first_run_gtk.cc +++ b/chrome/browser/first_run_gtk.cc @@ -139,3 +139,48 @@ bool FirstRun::ImportBookmarks(const std::wstring& import_bookmarks_path) { // for the process to return. return base::LaunchApp(import_cmd, true, false, NULL); } + +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +CommandLine* Upgrade::new_command_line_ = NULL; +double Upgrade::saved_last_modified_time_of_exe_ = 0; + +// static +bool Upgrade::IsUpdatePendingRestart() { + return saved_last_modified_time_of_exe_ != + Upgrade::GetLastModifiedTimeOfExe(); +} + +// static +void Upgrade::SaveLastModifiedTimeOfExe() { + saved_last_modified_time_of_exe_ = Upgrade::GetLastModifiedTimeOfExe(); +} + +// static +void Upgrade::RelaunchChromeBrowserWithNewCommandLineIfNeeded() { + if (new_command_line_) { + if (!base::LaunchApp(*new_command_line_, false, false, NULL)) { + DLOG(ERROR) << "Launching a new instance of the browser failed."; + } else { + DLOG(WARNING) << "Launched a new instance of the browser."; + } + delete new_command_line_; + new_command_line_ = NULL; + } +} + +// static +double Upgrade::GetLastModifiedTimeOfExe() { + FilePath exe_file_path; + if (!PathService::Get(base::FILE_EXE, &exe_file_path)) { + LOG(WARNING) << "Failed to get FilePath object for FILE_EXE."; + return saved_last_modified_time_of_exe_; + } + file_util::FileInfo exe_file_info; + if (!file_util::GetFileInfo(exe_file_path, &exe_file_info)) { + LOG(WARNING) << "Failed to get FileInfo object for FILE_EXE - " + << exe_file_path.value(); + return saved_last_modified_time_of_exe_; + } + return exe_file_info.last_modified.ToDoubleT(); +} +#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) |