summaryrefslogtreecommitdiffstats
path: root/chrome/browser/background_mode_manager.cc
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 /chrome/browser/background_mode_manager.cc
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
Diffstat (limited to 'chrome/browser/background_mode_manager.cc')
-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)