| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #ifndef CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ | 5 #ifndef CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ |
| 6 #define CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ | 6 #define CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ |
| 7 | 7 |
| 8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
| 9 | 9 |
| 10 // Represents and facilitates operations on the address range corresponding to a | 10 // Represents and facilitates operations on the address range corresponding to a |
| 11 // loaded module. | 11 // loaded module. |
| 12 struct ModuleInfo { | 12 struct ModuleInfo { |
| 13 ModuleInfo() : base_address(0), size(0) { | 13 ModuleInfo() : base_address(0), size(0) { |
| 14 } | 14 } |
| 15 | 15 |
| 16 ModuleInfo(const base::char16* const module_name, | 16 ModuleInfo(const base::char16* const module_name, |
| 17 uintptr_t module_base_address, | 17 uintptr_t module_base_address, |
| 18 size_t module_size) | 18 uint32_t module_size) |
| 19 : base_address(module_base_address), | 19 : base_address(module_base_address), |
| 20 size(module_size), | 20 size(module_size), |
| 21 name(module_name) { | 21 name(module_name) { |
| 22 } | 22 } |
| 23 | 23 |
| 24 // Sorts modules by their base address. | 24 // Sorts modules by their base address. |
| 25 bool operator< (const ModuleInfo& compare) const { | 25 bool operator< (const ModuleInfo& compare) const { |
| 26 return base_address < compare.base_address; | 26 return base_address < compare.base_address; |
| 27 } | 27 } |
| 28 | 28 |
| 29 // Identifies if an address is within a module. | 29 // Identifies if an address is within a module. |
| 30 bool ContainsAddress(uintptr_t address) const { | 30 bool ContainsAddress(uintptr_t address) const { |
| 31 return address >= base_address && address < base_address + size; | 31 return address >= base_address && address < base_address + size; |
| 32 } | 32 } |
| 33 | 33 |
| 34 base::string16 name; | 34 base::string16 name; |
| 35 uintptr_t base_address; | 35 uintptr_t base_address; |
| 36 size_t size; | 36 uint32_t size; |
| 37 }; | 37 }; |
| 38 | 38 |
| 39 #endif // CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ | 39 #endif // CHROME_BROWSER_INSTALL_VERIFICATION_WIN_MODULE_INFO_H_ |
| OLD | NEW |