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

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

Issue 345021: Continue to remove CHROME_FRAME_BUILD define from code that goes into chrome.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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.cc
===================================================================
--- chrome/installer/setup/install.cc (revision 30960)
+++ chrome/installer/setup/install.cc (working copy)
@@ -7,6 +7,7 @@
#include "chrome/installer/setup/install.h"
+#include "base/command_line.h"
#include "base/file_util.h"
#include "base/logging.h"
#include "base/path_service.h"
@@ -85,6 +86,34 @@
}
}
+void AppendUninstallCommandLineFlags(std::wstring* uninstall_cmd_line,
+ bool is_system) {
+ DCHECK(uninstall_cmd_line);
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kUninstall);
+
+ if (InstallUtil::IsChromeFrameProcess()) {
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kForceUninstall);
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kDeleteProfile);
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kChromeFrame);
+ }
+
+ // Propagate the verbose logging switch to uninstalls too.
+ const CommandLine& command_line = *CommandLine::ForCurrentProcess();
+ if (command_line.HasSwitch(installer_util::switches::kVerboseLogging)) {
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kVerboseLogging);
+ }
+
+ if (is_system) {
+ uninstall_cmd_line->append(L" --");
+ uninstall_cmd_line->append(installer_util::switches::kSystemLevel);
+ }
+}
+
// This method adds work items to create (or update) Chrome uninstall entry in
// Control Panel->Add/Remove Programs list.
void AddUninstallShortcutWorkItems(HKEY reg_root,
@@ -98,21 +127,11 @@
new_version));
file_util::AppendToPath(&uninstall_cmd,
file_util::GetFilenameFromPath(exe_path));
- uninstall_cmd.append(L"\" --");
- uninstall_cmd.append(installer_util::switches::kUninstall);
+ uninstall_cmd.append(L"\"");
-#if defined(CHROME_FRAME_BUILD)
- uninstall_cmd.append(L" --");
- uninstall_cmd.append(installer_util::switches::kForceUninstall);
- uninstall_cmd.append(L" --");
- uninstall_cmd.append(installer_util::switches::kDeleteProfile);
-#endif
+ AppendUninstallCommandLineFlags(&uninstall_cmd,
+ reg_root == HKEY_LOCAL_MACHINE);
- if (reg_root == HKEY_LOCAL_MACHINE) {
- uninstall_cmd.append(L" --");
- uninstall_cmd.append(installer_util::switches::kSystemLevel);
- }
-
// Create DisplayName, UninstallString and InstallLocation keys
BrowserDistribution* dist = BrowserDistribution::GetDistribution();
std::wstring uninstall_reg = dist->GetUninstallRegPath();
@@ -250,21 +269,10 @@
new_version));
file_util::AppendToPath(&setup_exe,
file_util::GetFilenameFromPath(exe_path));
- std::wstring arguments(L" --");
- arguments.append(installer_util::switches::kUninstall);
-#if defined(CHROME_FRAME_BUILD)
- arguments.append(L" --");
- arguments.append(installer_util::switches::kForceUninstall);
- arguments.append(L" --");
- arguments.append(installer_util::switches::kDeleteProfile);
-#endif
+ std::wstring arguments;
+ AppendUninstallCommandLineFlags(&arguments, system_install);
- if (system_install) {
- arguments.append(L" --");
- arguments.append(installer_util::switches::kSystemLevel);
- }
-
LOG(INFO) << "Creating/updating uninstall link at "
<< uninstall_link.value();
ret = ret && file_util::CreateShortcutLink(setup_exe.c_str(),
@@ -466,12 +474,12 @@
if (reg_root != HKEY_LOCAL_MACHINE && reg_root != HKEY_CURRENT_USER)
return false;
-#if defined(CHROME_FRAME_BUILD)
- // Make sure that we don't end up deleting installed files on next reboot.
- if (!RemoveFromMovesPendingReboot(install_path.c_str())) {
- LOG(ERROR) << "Error accessing pending moves value.";
+ if (InstallUtil::IsChromeFrameProcess()) {
+ // Make sure that we don't end up deleting installed files on next reboot.
+ if (!RemoveFromMovesPendingReboot(install_path.c_str())) {
+ LOG(ERROR) << "Error accessing pending moves value.";
+ }
}
-#endif
scoped_ptr<WorkItemList> install_list(WorkItem::CreateWorkItemList());
// A temp directory that work items need and the actual install directory.

Powered by Google App Engine
This is Rietveld 408576698