Index: base/sys_info_mac.mm |
diff --git a/base/sys_info_mac.mm b/base/sys_info_mac.mm |
index 1141bd557768bab8eb387dd62668831edd40bd92..86d58502c9c205dd3255fcf8e50a21266b40711b 100644 |
--- a/base/sys_info_mac.mm |
+++ b/base/sys_info_mac.mm |
@@ -96,16 +96,23 @@ int64_t SysInfo::AmountOfAvailablePhysicalMemory() { |
std::string SysInfo::CPUModelName() { |
char name[256]; |
size_t len = arraysize(name); |
- if (sysctlbyname("machdep.cpu.brand_string", &name, &len, NULL, 0) == 0) |
- return name; |
+ if (sysctlbyname("machdep.cpu.brand_string", &name, &len, nullptr, 0) == 0) { |
+ DCHECK_GE(len, 1u); |
+ DCHECK_EQ('\0', name[len - 1]); |
+ return std::string(name, len - 1); |
+ } |
return std::string(); |
} |
+// static |
std::string SysInfo::HardwareModelName() { |
char model[256]; |
size_t len = sizeof(model); |
- if (sysctlbyname("hw.model", model, &len, NULL, 0) == 0) |
- return std::string(model, 0, len); |
+ if (sysctlbyname("hw.model", model, &len, nullptr, 0) == 0) { |
+ DCHECK_GE(len, 1u); |
+ DCHECK_EQ('\0', model[len - 1]); |
+ return std::string(model, len - 1); |
+ } |
return std::string(); |
} |