| Index: chrome/installer/setup/setup_main.cc
|
| diff --git a/chrome/installer/setup/setup_main.cc b/chrome/installer/setup/setup_main.cc
|
| index d76f6ce6c2dcd7f530ca88f1736375576eaaa727..2627ecc32c7e775ea08ea6f2d7ae1d2f29b018f0 100644
|
| --- a/chrome/installer/setup/setup_main.cc
|
| +++ b/chrome/installer/setup/setup_main.cc
|
| @@ -628,10 +628,13 @@ installer::InstallStatus UninstallProducts(
|
| if (!system_level_cmd.GetProgram().empty())
|
| base::LaunchProcess(system_level_cmd, base::LaunchOptions());
|
|
|
| - // Tell Google Update that an uninstall has taken place.
|
| - // Ignore the return value: success or failure of Google Update
|
| - // has no bearing on the success or failure of Chrome's uninstallation.
|
| - google_update::UninstallGoogleUpdate(installer_state.system_install());
|
| + // Tell Google Update that an uninstall has taken place if this install did
|
| + // not originate from the MSI. Google Update has its own logic relating to
|
| + // MSI-driven uninstalls that conflicts with this. Ignore the return value:
|
| + // success or failure of Google Update has no bearing on the success or
|
| + // failure of Chrome's uninstallation.
|
| + if (!installer_state.is_msi())
|
| + google_update::UninstallGoogleUpdate(installer_state.system_install());
|
|
|
| return install_status;
|
| }
|
|
|