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

Side by Side Diff: chrome/installer/setup/setup_main.cc

Issue 300593002: Make omaha, gcapi and uninstall registry accesses use Wow6432Node on 64-bit (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/installer/setup/install_worker.cc ('k') | chrome/installer/setup/uninstall.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/installer/setup/setup_main.h" 5 #include "chrome/installer/setup/setup_main.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <msi.h> 8 #include <msi.h>
9 #include <shellapi.h> 9 #include <shellapi.h>
10 #include <shlobj.h> 10 #include <shlobj.h>
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 set_ignore_failure(true); 256 set_ignore_failure(true);
257 257
258 // Add work items to delete the "opv", "cpv", and "cmd" values from all 258 // Add work items to delete the "opv", "cpv", and "cmd" values from all
259 // products we're operating on (which including the multi-install binaries). 259 // products we're operating on (which including the multi-install binaries).
260 const Products& products = installer_state->products(); 260 const Products& products = installer_state->products();
261 HKEY reg_root = installer_state->root_key(); 261 HKEY reg_root = installer_state->root_key();
262 base::string16 version_key; 262 base::string16 version_key;
263 for (Products::const_iterator it = products.begin(); it < products.end(); 263 for (Products::const_iterator it = products.begin(); it < products.end();
264 ++it) { 264 ++it) {
265 version_key = (*it)->distribution()->GetVersionKey(); 265 version_key = (*it)->distribution()->GetVersionKey();
266 install_list->AddDeleteRegValueWorkItem(reg_root,
267 version_key,
268 KEY_WOW64_32KEY,
269 google_update::kRegOldVersionField);
266 install_list->AddDeleteRegValueWorkItem( 270 install_list->AddDeleteRegValueWorkItem(
267 reg_root, version_key, WorkItem::kWow64Default, 271 reg_root,
268 google_update::kRegOldVersionField); 272 version_key,
269 install_list->AddDeleteRegValueWorkItem( 273 KEY_WOW64_32KEY,
270 reg_root, version_key, WorkItem::kWow64Default,
271 google_update::kRegCriticalVersionField); 274 google_update::kRegCriticalVersionField);
272 install_list->AddDeleteRegValueWorkItem( 275 install_list->AddDeleteRegValueWorkItem(reg_root,
273 reg_root, version_key, WorkItem::kWow64Default, 276 version_key,
274 google_update::kRegRenameCmdField); 277 KEY_WOW64_32KEY,
278 google_update::kRegRenameCmdField);
275 } 279 }
276 installer::InstallStatus ret = installer::RENAME_SUCCESSFUL; 280 installer::InstallStatus ret = installer::RENAME_SUCCESSFUL;
277 if (!install_list->Do()) { 281 if (!install_list->Do()) {
278 LOG(ERROR) << "Renaming of executables failed. Rolling back any changes."; 282 LOG(ERROR) << "Renaming of executables failed. Rolling back any changes.";
279 install_list->Rollback(); 283 install_list->Rollback();
280 ret = installer::RENAME_FAILED; 284 ret = installer::RENAME_FAILED;
281 } 285 }
282 // temp_path's dtor will take care of deleting or scheduling itself for 286 // temp_path's dtor will take care of deleting or scheduling itself for
283 // deletion at reboot when this scope closes. 287 // deletion at reboot when this scope closes.
284 VLOG(1) << "Deleting temporary directory " << temp_path.path().value(); 288 VLOG(1) << "Deleting temporary directory " << temp_path.path().value();
(...skipping 1553 matching lines...) Expand 10 before | Expand all | Expand 10 after
1838 // Note that we allow the status installer::UNINSTALL_REQUIRES_REBOOT 1842 // Note that we allow the status installer::UNINSTALL_REQUIRES_REBOOT
1839 // to pass through, since this is only returned on uninstall which is 1843 // to pass through, since this is only returned on uninstall which is
1840 // never invoked directly by Google Update. 1844 // never invoked directly by Google Update.
1841 return_code = InstallUtil::GetInstallReturnCode(install_status); 1845 return_code = InstallUtil::GetInstallReturnCode(install_status);
1842 } 1846 }
1843 1847
1844 VLOG(1) << "Installation complete, returning: " << return_code; 1848 VLOG(1) << "Installation complete, returning: " << return_code;
1845 1849
1846 return return_code; 1850 return return_code;
1847 } 1851 }
OLDNEW
« no previous file with comments | « chrome/installer/setup/install_worker.cc ('k') | chrome/installer/setup/uninstall.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698