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

Side by Side Diff: chrome_frame/test/chrome_frame_test_utils.cc

Issue 6090006: Regkey functions return error code instead of bool (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 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
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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_frame/test/chrome_frame_test_utils.h" 5 #include "chrome_frame/test/chrome_frame_test_utils.h"
6 6
7 #include <atlbase.h> 7 #include <atlbase.h>
8 #include <atlwin.h> 8 #include <atlwin.h>
9 #include <iepmapi.h> 9 #include <iepmapi.h>
10 #include <sddl.h> 10 #include <sddl.h>
(...skipping 614 matching lines...) Expand 10 before | Expand all | Expand 10 after
625 } 625 }
626 return NULL; 626 return NULL;
627 } 627 }
628 } 628 }
629 629
630 TempRegKeyOverride::TempRegKeyOverride(HKEY override, const wchar_t* temp_name) 630 TempRegKeyOverride::TempRegKeyOverride(HKEY override, const wchar_t* temp_name)
631 : override_(override), temp_name_(temp_name) { 631 : override_(override), temp_name_(temp_name) {
632 DCHECK(temp_name && lstrlenW(temp_name)); 632 DCHECK(temp_name && lstrlenW(temp_name));
633 std::wstring key_path(kTempTestKeyPath); 633 std::wstring key_path(kTempTestKeyPath);
634 key_path += L"\\" + temp_name_; 634 key_path += L"\\" + temp_name_;
635 EXPECT_TRUE(temp_key_.Create(HKEY_CURRENT_USER, key_path.c_str(), 635 EXPECT_EQ(ERROR_SUCCESS, temp_key_.Create(HKEY_CURRENT_USER, key_path.c_str(),
636 KEY_ALL_ACCESS)); 636 KEY_ALL_ACCESS));
637 EXPECT_EQ(ERROR_SUCCESS, 637 EXPECT_EQ(ERROR_SUCCESS,
638 ::RegOverridePredefKey(override_, temp_key_.Handle())); 638 ::RegOverridePredefKey(override_, temp_key_.Handle()));
639 } 639 }
640 640
641 TempRegKeyOverride::~TempRegKeyOverride() { 641 TempRegKeyOverride::~TempRegKeyOverride() {
642 ::RegOverridePredefKey(override_, NULL); 642 ::RegOverridePredefKey(override_, NULL);
643 // The temp key will be deleted via a call to DeleteAllTempKeys(). 643 // The temp key will be deleted via a call to DeleteAllTempKeys().
644 } 644 }
645 645
646 // static 646 // static
647 void TempRegKeyOverride::DeleteAllTempKeys() { 647 void TempRegKeyOverride::DeleteAllTempKeys() {
648 base::win::RegKey key; 648 base::win::RegKey key;
649 if (key.Open(HKEY_CURRENT_USER, L"", KEY_ALL_ACCESS)) { 649 if (key.Open(HKEY_CURRENT_USER, L"", KEY_ALL_ACCESS) == ERROR_SUCCESS) {
650 key.DeleteKey(kTempTestKeyPath); 650 key.DeleteKey(kTempTestKeyPath);
651 } 651 }
652 } 652 }
653 653
654 ScopedVirtualizeHklmAndHkcu::ScopedVirtualizeHklmAndHkcu() { 654 ScopedVirtualizeHklmAndHkcu::ScopedVirtualizeHklmAndHkcu() {
655 TempRegKeyOverride::DeleteAllTempKeys(); 655 TempRegKeyOverride::DeleteAllTempKeys();
656 hklm_.reset(new TempRegKeyOverride(HKEY_LOCAL_MACHINE, L"hklm_fake")); 656 hklm_.reset(new TempRegKeyOverride(HKEY_LOCAL_MACHINE, L"hklm_fake"));
657 hkcu_.reset(new TempRegKeyOverride(HKEY_CURRENT_USER, L"hkcu_fake")); 657 hkcu_.reset(new TempRegKeyOverride(HKEY_CURRENT_USER, L"hkcu_fake"));
658 } 658 }
659 659
660 ScopedVirtualizeHklmAndHkcu::~ScopedVirtualizeHklmAndHkcu() { 660 ScopedVirtualizeHklmAndHkcu::~ScopedVirtualizeHklmAndHkcu() {
661 hkcu_.reset(NULL); 661 hkcu_.reset(NULL);
662 hklm_.reset(NULL); 662 hklm_.reset(NULL);
663 TempRegKeyOverride::DeleteAllTempKeys(); 663 TempRegKeyOverride::DeleteAllTempKeys();
664 } 664 }
665 665
666 bool KillProcesses(const std::wstring& executable_name, int exit_code, 666 bool KillProcesses(const std::wstring& executable_name, int exit_code,
667 bool wait) { 667 bool wait) {
668 bool result = true; 668 bool result = true;
669 base::NamedProcessIterator iter(executable_name, NULL); 669 base::NamedProcessIterator iter(executable_name, NULL);
670 while (const base::ProcessEntry* entry = iter.NextProcessEntry()) { 670 while (const base::ProcessEntry* entry = iter.NextProcessEntry()) {
671 result &= base::KillProcessById(entry->pid(), exit_code, wait); 671 result &= base::KillProcessById(entry->pid(), exit_code, wait);
672 } 672 }
673 return result; 673 return result;
674 } 674 }
675 675
676 } // namespace chrome_frame_test 676 } // namespace chrome_frame_test
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698