summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrickcam@chromium.org <rickcam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-04 22:55:55 +0000
committerrickcam@chromium.org <rickcam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-04 22:55:55 +0000
commit88eaec616804b5a770c80059effd23076e0b45cd (patch)
tree633a54c939ac02133976211fd1b29ef17f8f4661
parent8d80ef42bd2aeb75fa202c0575b7150ebe9421ac (diff)
downloadchromium_src-88eaec616804b5a770c80059effd23076e0b45cd.zip
chromium_src-88eaec616804b5a770c80059effd23076e0b45cd.tar.gz
chromium_src-88eaec616804b5a770c80059effd23076e0b45cd.tar.bz2
BUG=57441
TEST=none Fixed logging error in Linux version of Launch On Startup support. Specifically, this corrects the handling of the result returned by WriteFile when generating the autostart .desktop file. Review URL: http://codereview.chromium.org/3565004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61429 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/background_mode_manager.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/chrome/browser/background_mode_manager.cc b/chrome/browser/background_mode_manager.cc
index 8946e3c..e10fa2b 100644
--- a/chrome/browser/background_mode_manager.cc
+++ b/chrome/browser/background_mode_manager.cc
@@ -98,12 +98,14 @@ class EnableLaunchOnStartupTask : public Task {
FilePath autostart_file = GetAutostartFilename(environment.get());
if (!file_util::DirectoryExists(autostart_directory) &&
!file_util::CreateDirectory(autostart_directory)) {
- LOG(WARNING) << "Failed to register launch on login.";
+ LOG(WARNING)
+ << "Failed to register launch on login. No autostart directory.";
return;
}
std::string wrapper_script;
if (!environment->GetVar("CHROME_WRAPPER", &wrapper_script)) {
- LOG(WARNING) << "Failed to register launch on login.";
+ LOG(WARNING)
+ << "Failed to register launch on login. CHROME_WRAPPER not set.";
return;
}
std::string autostart_file_contents =
@@ -112,9 +114,14 @@ class EnableLaunchOnStartupTask : public Task {
"Terminal=false\n"
"Exec=" + wrapper_script + "\n"
"Name=" + version_info->Name() + "\n";
+ std::string::size_type content_length = autostart_file_contents.length();
if (file_util::WriteFile(autostart_file, autostart_file_contents.c_str(),
- autostart_file_contents.length()))
- LOG(WARNING) << "Failed to register launch on login.";
+ content_length) !=
+ static_cast<int>(content_length)) {
+ LOG(WARNING) << "Failed to register launch on login. Failed to write "
+ << autostart_file.value();
+ file_util::Delete(GetAutostartFilename(environment.get()), false);
+ }
}
};
#endif // defined(OS_LINUX)