OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/common/importer/ie_importer_test_registry_overrider_win.h" | 5 #include "chrome/common/importer/importer_test_registry_overrider_win.h" |
6 | 6 |
7 #include <windows.h> | 7 #include <windows.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/environment.h" | 11 #include "base/environment.h" |
12 #include "base/guid.h" | 12 #include "base/guid.h" |
13 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
14 #include "base/strings/utf_string_conversions.h" | 14 #include "base/strings/utf_string_conversions.h" |
15 #include "base/win/registry.h" | 15 #include "base/win/registry.h" |
(...skipping 14 matching lines...) Expand all Loading... |
30 std::string value; | 30 std::string value; |
31 bool result = env->GetVar(kTestHKCUOverrideEnvironmentVariable, &value); | 31 bool result = env->GetVar(kTestHKCUOverrideEnvironmentVariable, &value); |
32 if (result) | 32 if (result) |
33 *key = base::UTF8ToUTF16(value); | 33 *key = base::UTF8ToUTF16(value); |
34 return result; | 34 return result; |
35 } | 35 } |
36 | 36 |
37 } // namespace | 37 } // namespace |
38 | 38 |
39 //////////////////////////////////////////////////////////////////////////////// | 39 //////////////////////////////////////////////////////////////////////////////// |
40 // IEImporterTestRegistryOverrider, public: | 40 // ImporterTestRegistryOverrider, public: |
41 | 41 |
42 IEImporterTestRegistryOverrider::IEImporterTestRegistryOverrider() | 42 ImporterTestRegistryOverrider::ImporterTestRegistryOverrider() |
43 : temporary_key_(kTestHKCUOverrideKeyPrefix + | 43 : temporary_key_(kTestHKCUOverrideKeyPrefix + |
44 base::UTF8ToUTF16(base::GenerateGUID())) { | 44 base::UTF8ToUTF16(base::GenerateGUID())) { |
45 DCHECK(!GetTestKeyFromEnvironment(NULL)); | 45 DCHECK(!GetTestKeyFromEnvironment(NULL)); |
46 | 46 |
47 scoped_ptr<base::Environment> env(base::Environment::Create()); | 47 scoped_ptr<base::Environment> env(base::Environment::Create()); |
48 bool success = env->SetVar(kTestHKCUOverrideEnvironmentVariable, | 48 bool success = env->SetVar(kTestHKCUOverrideEnvironmentVariable, |
49 base::UTF16ToUTF8(temporary_key_)); | 49 base::UTF16ToUTF8(temporary_key_)); |
50 DCHECK(success); | 50 DCHECK(success); |
51 } | 51 } |
52 | 52 |
53 IEImporterTestRegistryOverrider::~IEImporterTestRegistryOverrider() { | 53 ImporterTestRegistryOverrider::~ImporterTestRegistryOverrider() { |
54 base::win::RegKey reg_key(HKEY_CURRENT_USER, temporary_key_.c_str(), | 54 base::win::RegKey reg_key(HKEY_CURRENT_USER, temporary_key_.c_str(), |
55 KEY_ALL_ACCESS); | 55 KEY_ALL_ACCESS); |
56 DCHECK(reg_key.Valid()); | 56 DCHECK(reg_key.Valid()); |
57 reg_key.DeleteKey(L""); | 57 reg_key.DeleteKey(L""); |
58 | 58 |
59 scoped_ptr<base::Environment> env(base::Environment::Create()); | 59 scoped_ptr<base::Environment> env(base::Environment::Create()); |
60 bool success = env->UnSetVar(kTestHKCUOverrideEnvironmentVariable); | 60 bool success = env->UnSetVar(kTestHKCUOverrideEnvironmentVariable); |
61 DCHECK(success); | 61 DCHECK(success); |
62 } | 62 } |
63 | 63 |
64 // static | 64 // static |
65 base::string16 IEImporterTestRegistryOverrider::GetTestRegistryOverride() { | 65 base::string16 ImporterTestRegistryOverrider::GetTestRegistryOverride() { |
66 base::string16 key; | 66 base::string16 key; |
67 if (!GetTestKeyFromEnvironment(&key)) | 67 if (!GetTestKeyFromEnvironment(&key)) |
68 return base::string16(); | 68 return base::string16(); |
69 return key; | 69 return key; |
70 } | 70 } |
OLD | NEW |