diff options
author | nia <nia@NetBSD.org> | 2021-07-14 21:35:04 +0200 |
---|---|---|
committer | BenBE <BenBE@geshi.org> | 2021-07-21 21:06:58 +0200 |
commit | a4b650fdec2cd0b1e0d24ce92d446a0f5c9d5eb3 (patch) | |
tree | 802804f9797ebdbb6eeee76fe9b3cb014e6345ba /netbsd | |
parent | 72cea2881c68c954f61dae4cd2a1935c4268434d (diff) |
netbsd: re-initialize freqSize before sysctlbyname()
Diffstat (limited to 'netbsd')
-rw-r--r-- | netbsd/NetBSDProcessList.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/netbsd/NetBSDProcessList.c b/netbsd/NetBSDProcessList.c index f215e622..51bc879f 100644 --- a/netbsd/NetBSDProcessList.c +++ b/netbsd/NetBSDProcessList.c @@ -377,7 +377,7 @@ static void NetBSDProcessList_scanCPUFrequency(NetBSDProcessList* this) { bool match = false; char name[64]; int freq = 0; - size_t freqSize = sizeof(freq); + size_t freqSize; for (unsigned int i = 0; i <= cpus; i++) { this->cpus[i].frequency = NAN; @@ -386,6 +386,7 @@ static void NetBSDProcessList_scanCPUFrequency(NetBSDProcessList* this) { /* newer hardware supports per-core frequency, for e.g. ARM big.LITTLE */ for (unsigned int i = 0; i <= cpus; i++) { snprintf(name, sizeof(name), "machdep.cpufreq.cpu%u.current", i); + freqSize = sizeof(freq); if (sysctlbyname(name, &freq, &freqSize, NULL, 0) != -1) { this->cpus[i].frequency = freq; match = true; @@ -401,6 +402,7 @@ static void NetBSDProcessList_scanCPUFrequency(NetBSDProcessList* this) { * we find a match... */ for (const char** s = freqSysctls; *s != NULL; ++s) { + freqSize = sizeof(freq); if (sysctlbyname(*s, &freq, &freqSize, NULL, 0) != -1) { match = true; break; |