| OLD | NEW |
| 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/browser/policy/policy_loader_win.h" | 5 #include "chrome/browser/policy/policy_loader_win.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include <string.h> | 9 #include <string.h> |
| 10 | 10 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 { kRegistryRecommendedSubKey, POLICY_LEVEL_RECOMMENDED }, | 81 { kRegistryRecommendedSubKey, POLICY_LEVEL_RECOMMENDED }, |
| 82 }; | 82 }; |
| 83 | 83 |
| 84 // Lookup at the mandatory path for both user and machine policies first, and | 84 // Lookup at the mandatory path for both user and machine policies first, and |
| 85 // then at the recommended path. | 85 // then at the recommended path. |
| 86 for (size_t k = 0; k < arraysize(kKeyPaths); ++k) { | 86 for (size_t k = 0; k < arraysize(kKeyPaths); ++k) { |
| 87 for (size_t h = 0; h < arraysize(kHives); ++h) { | 87 for (size_t h = 0; h < arraysize(kHives); ++h) { |
| 88 string16 path(kKeyPaths[k].path); | 88 string16 path(kKeyPaths[k].path); |
| 89 if (!key_path.empty()) | 89 if (!key_path.empty()) |
| 90 path += kPathSep + key_path; | 90 path += kPathSep + key_path; |
| 91 key->Open(kHives[h].hive, path.c_str(), KEY_READ); | 91 if (key->Open(kHives[h].hive, path.c_str(), KEY_READ) != ERROR_SUCCESS || |
| 92 if (!key->Valid()) | 92 !key->Valid()) { |
| 93 continue; | 93 continue; |
| 94 } |
| 94 if (value_name.empty() || key->HasValue(value_name.c_str())) { | 95 if (value_name.empty() || key->HasValue(value_name.c_str())) { |
| 95 *level = kKeyPaths[k].level; | 96 *level = kKeyPaths[k].level; |
| 96 *scope = kHives[h].scope; | 97 *scope = kHives[h].scope; |
| 97 return true; | 98 return true; |
| 98 } | 99 } |
| 99 } | 100 } |
| 100 } | 101 } |
| 101 return false; | 102 return false; |
| 102 } | 103 } |
| 103 | 104 |
| (...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 680 | 681 |
| 681 void PolicyLoaderWin::OnObjectSignaled(HANDLE object) { | 682 void PolicyLoaderWin::OnObjectSignaled(HANDLE object) { |
| 682 DCHECK(object == user_policy_changed_event_.handle() || | 683 DCHECK(object == user_policy_changed_event_.handle() || |
| 683 object == machine_policy_changed_event_.handle()) | 684 object == machine_policy_changed_event_.handle()) |
| 684 << "unexpected object signaled policy reload, obj = " | 685 << "unexpected object signaled policy reload, obj = " |
| 685 << std::showbase << std::hex << object; | 686 << std::showbase << std::hex << object; |
| 686 Reload(false); | 687 Reload(false); |
| 687 } | 688 } |
| 688 | 689 |
| 689 } // namespace policy | 690 } // namespace policy |
| OLD | NEW |