Skip to content

Commit

Permalink
Merge pull request #1027 from it-novum/fixwindowscounter
Browse files Browse the repository at this point in the history
Fixes #1026 windows counters on non english systems
  • Loading branch information
shirou committed Feb 6, 2021
2 parents a9a6146 + 76fb312 commit d765dfc
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 10 deletions.
8 changes: 4 additions & 4 deletions internal/common/common_windows.go
Expand Up @@ -71,7 +71,7 @@ var (
ProcNtWow64ReadVirtualMemory64 = ModNt.NewProc("NtWow64ReadVirtualMemory64")

PdhOpenQuery = ModPdh.NewProc("PdhOpenQuery")
PdhAddCounter = ModPdh.NewProc("PdhAddCounterW")
PdhAddEnglishCounterW = ModPdh.NewProc("PdhAddEnglishCounterW")
PdhCollectQueryData = ModPdh.NewProc("PdhCollectQueryData")
PdhGetFormattedCounterValue = ModPdh.NewProc("PdhGetFormattedCounterValue")
PdhCloseQuery = ModPdh.NewProc("PdhCloseQuery")
Expand Down Expand Up @@ -113,10 +113,10 @@ func CreateQuery() (windows.Handle, error) {
return query, nil
}

// CreateCounter with a PdhAddCounter call
// CreateCounter with a PdhAddEnglishCounterW call
func CreateCounter(query windows.Handle, pname, cname string) (*CounterInfo, error) {
var counter windows.Handle
r, _, err := PdhAddCounter.Call(
r, _, err := PdhAddEnglishCounterW.Call(
uintptr(query),
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(cname))),
0,
Expand Down Expand Up @@ -159,7 +159,7 @@ func NewWin32PerformanceCounter(postName, counterName string) (*Win32Performance
PostName: postName,
CounterName: counterName,
}
r, _, err := PdhAddCounter.Call(
r, _, err := PdhAddEnglishCounterW.Call(
uintptr(counter.Query),
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(counter.CounterName))),
0,
Expand Down
2 changes: 1 addition & 1 deletion load/load_windows.go
Expand Up @@ -36,7 +36,7 @@ func loadAvgGoroutine() {

counter, err := common.ProcessorQueueLengthCounter()
if err != nil || counter == nil {
log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github")
log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github: err")
return
}

Expand Down
8 changes: 4 additions & 4 deletions v3/internal/common/common_windows.go
Expand Up @@ -71,7 +71,7 @@ var (
ProcNtWow64ReadVirtualMemory64 = ModNt.NewProc("NtWow64ReadVirtualMemory64")

PdhOpenQuery = ModPdh.NewProc("PdhOpenQuery")
PdhAddCounter = ModPdh.NewProc("PdhAddCounterW")
PdhAddEnglishCounterW = ModPdh.NewProc("PdhAddEnglishCounterW")
PdhCollectQueryData = ModPdh.NewProc("PdhCollectQueryData")
PdhGetFormattedCounterValue = ModPdh.NewProc("PdhGetFormattedCounterValue")
PdhCloseQuery = ModPdh.NewProc("PdhCloseQuery")
Expand Down Expand Up @@ -113,10 +113,10 @@ func CreateQuery() (windows.Handle, error) {
return query, nil
}

// CreateCounter with a PdhAddCounter call
// CreateCounter with a PdhAddEnglishCounterW call
func CreateCounter(query windows.Handle, pname, cname string) (*CounterInfo, error) {
var counter windows.Handle
r, _, err := PdhAddCounter.Call(
r, _, err := PdhAddEnglishCounterW.Call(
uintptr(query),
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(cname))),
0,
Expand Down Expand Up @@ -159,7 +159,7 @@ func NewWin32PerformanceCounter(postName, counterName string) (*Win32Performance
PostName: postName,
CounterName: counterName,
}
r, _, err := PdhAddCounter.Call(
r, _, err := PdhAddEnglishCounterW.Call(
uintptr(counter.Query),
uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(counter.CounterName))),
0,
Expand Down
2 changes: 1 addition & 1 deletion v3/load/load_windows.go
Expand Up @@ -36,7 +36,7 @@ func loadAvgGoroutine() {

counter, err := common.ProcessorQueueLengthCounter()
if err != nil || counter == nil {
log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github")
log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github: err")
return
}

Expand Down

0 comments on commit d765dfc

Please sign in to comment.