| Index: chrome/installer/setup/chrome_frame_quick_enable.cc
|
| ===================================================================
|
| --- chrome/installer/setup/chrome_frame_quick_enable.cc (revision 76463)
|
| +++ chrome/installer/setup/chrome_frame_quick_enable.cc (working copy)
|
| @@ -42,7 +42,7 @@
|
| return NON_MULTI_INSTALLATION_EXISTS;
|
| }
|
|
|
| - // Chrome Frame must not be installed.
|
| + // Chrome Frame must not be installed (ready-mode doesn't count).
|
| const ProductState* cf_state =
|
| machine_state.GetProductState(installer_state.system_install(),
|
| BrowserDistribution::CHROME_FRAME);
|
| @@ -52,7 +52,9 @@
|
| BrowserDistribution::CHROME_FRAME);
|
| }
|
|
|
| - if (cf_state != NULL) {
|
| + if (cf_state != NULL &&
|
| + !cf_state->uninstall_command().HasSwitch(
|
| + switches::kChromeFrameReadyMode)) {
|
| LOG(ERROR) << "Chrome Frame already installed.";
|
| return installer_state.system_install() ?
|
| SYSTEM_LEVEL_INSTALL_EXISTS : USER_LEVEL_INSTALL_EXISTS;
|
| @@ -120,6 +122,12 @@
|
| *chrome_state);
|
| AddGoogleUpdateWorkItems(*installer_state, item_list.get());
|
|
|
| + // Add the items to remove the quick-enable-cf command from the registry.
|
| + AddQuickEnableWorkItems(*installer_state, machine_state,
|
| + &chrome_state->uninstall_command().GetProgram(),
|
| + &chrome_state->version(),
|
| + item_list.get());
|
| +
|
| if (!item_list->Do()) {
|
| item_list->Rollback();
|
| status = INSTALL_FAILED;
|
|
|