Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8164)

Unified Diff: chrome/installer/setup/install_worker.cc

Issue 6538025: Temp dir cleanup:... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/installer/setup/install_worker.cc
===================================================================
--- chrome/installer/setup/install_worker.cc (revision 75264)
+++ chrome/installer/setup/install_worker.cc (working copy)
@@ -79,8 +79,8 @@
// saved state instead of assuming it is the same as the registration list.
if (!com_dll_list.empty()) {
if (old_version) {
- FilePath old_dll_path(installer_state.target_path().Append(
- UTF8ToWide(old_version->GetString())));
+ FilePath old_dll_path(installer_state.target_path().AppendASCII(
+ old_version->GetString()));
installer::AddRegisterComDllWorkItems(old_dll_path,
com_dll_list,
@@ -90,8 +90,8 @@
work_item_list);
}
- FilePath dll_path(installer_state.target_path().Append(
- UTF8ToWide(new_version.GetString())));
+ FilePath dll_path(installer_state.target_path().AppendASCII(
+ new_version.GetString()));
installer::AddRegisterComDllWorkItems(dll_path,
com_dll_list,
installer_state.system_install(),
@@ -363,6 +363,7 @@
void AddDeleteUninstallShortcutsForMSIWorkItems(
const InstallerState& installer_state,
const Product& product,
+ const FilePath& temp_path,
WorkItemList* work_item_list) {
DCHECK(installer_state.is_msi())
<< "This must only be called for MSI installations!";
@@ -393,7 +394,7 @@
VLOG(1) << "Deleting old uninstall shortcut (if present): "
<< uninstall_link.value();
WorkItem* delete_link = work_item_list->AddDeleteTreeWorkItem(
- uninstall_link);
+ uninstall_link, temp_path);
delete_link->set_ignore_failure(true);
delete_link->set_log_message(
"Failed to delete old uninstall shortcut.");
@@ -414,6 +415,7 @@
const FilePath& new_chrome_exe,
const Version* current_version,
const Version& new_version,
+ const FilePath& temp_path,
WorkItemList* post_install_task_list) {
DCHECK(post_install_task_list);
@@ -519,6 +521,7 @@
// previous non-MSI installations for the same type of install (system or
// per user).
AddDeleteUninstallShortcutsForMSIWorkItems(installer_state, *product,
+ temp_path,
post_install_task_list);
}
if (installer_state.is_multi_install()) {
@@ -536,7 +539,7 @@
const FilePath& setup_path,
const FilePath& archive_path,
const FilePath& src_path,
- const FilePath& temp_dir,
+ const FilePath& temp_path,
const Version& new_version,
scoped_ptr<Version>* current_version,
WorkItemList* install_list) {
@@ -545,7 +548,7 @@
const FilePath& target_path = installer_state.target_path();
// A temp directory that work items need and the actual install directory.
- install_list->AddCreateDirWorkItem(temp_dir);
+ install_list->AddCreateDirWorkItem(temp_path);
install_list->AddCreateDirWorkItem(target_path);
// Delete any new_chrome.exe if present (we will end up creating a new one
@@ -553,47 +556,47 @@
FilePath new_chrome_exe(
target_path.Append(installer::kChromeNewExe));
- install_list->AddDeleteTreeWorkItem(new_chrome_exe);
+ install_list->AddDeleteTreeWorkItem(new_chrome_exe, temp_path);
install_list->AddCopyTreeWorkItem(
src_path.Append(installer::kChromeExe).value(),
target_path.Append(installer::kChromeExe).value(),
- temp_dir.value(), WorkItem::NEW_NAME_IF_IN_USE, new_chrome_exe.value());
+ temp_path.value(), WorkItem::NEW_NAME_IF_IN_USE, new_chrome_exe.value());
// Extra executable for 64 bit systems.
if (Is64bit()) {
install_list->AddCopyTreeWorkItem(
src_path.Append(installer::kWowHelperExe).value(),
target_path.Append(installer::kWowHelperExe).value(),
- temp_dir.value(), WorkItem::ALWAYS);
+ temp_path.value(), WorkItem::ALWAYS);
}
// If it is system level install copy the version folder (since we want to
// take the permissions of %ProgramFiles% folder) otherwise just move it.
if (installer_state.system_install()) {
install_list->AddCopyTreeWorkItem(
- src_path.Append(UTF8ToWide(new_version.GetString())).value(),
- target_path.Append(UTF8ToWide(new_version.GetString())).value(),
- temp_dir.value(), WorkItem::ALWAYS);
+ src_path.AppendASCII(new_version.GetString()).value(),
+ target_path.AppendASCII(new_version.GetString()).value(),
+ temp_path.value(), WorkItem::ALWAYS);
} else {
install_list->AddMoveTreeWorkItem(
- src_path.Append(UTF8ToWide(new_version.GetString())).value(),
- target_path.Append(UTF8ToWide(new_version.GetString())).value(),
- temp_dir.value());
+ src_path.AppendASCII(new_version.GetString()).value(),
+ target_path.AppendASCII(new_version.GetString()).value(),
+ temp_path.value());
}
// Copy the default Dictionaries only if the folder doesn't exist already.
install_list->AddCopyTreeWorkItem(
src_path.Append(installer::kDictionaries).value(),
target_path.Append(installer::kDictionaries).value(),
- temp_dir.value(), WorkItem::IF_NOT_PRESENT);
+ temp_path.value(), WorkItem::IF_NOT_PRESENT);
// Delete any old_chrome.exe if present.
install_list->AddDeleteTreeWorkItem(
- target_path.Append(installer::kChromeOldExe));
+ target_path.Append(installer::kChromeOldExe), temp_path);
// Copy installer in install directory and
// add shortcut in Control Panel->Add/Remove Programs.
- AddInstallerCopyTasks(installer_state, setup_path, archive_path, temp_dir,
+ AddInstallerCopyTasks(installer_state, setup_path, archive_path, temp_path,
new_version, install_list);
const HKEY root = installer_state.root_key();
@@ -628,6 +631,7 @@
new_chrome_exe,
current_version->get(),
new_version,
+ temp_path,
install_list);
}

Powered by Google App Engine
This is Rietveld 408576698