From 1de755d2f2a8a99314ecf1b1715040e89bd41c19 Mon Sep 17 00:00:00 2001 From: Dmytro Vovk Date: Mon, 7 Apr 2025 16:41:52 +0100 Subject: [PATCH 1/2] possible fix --- cpu/cpu_darwin.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cpu/cpu_darwin.go b/cpu/cpu_darwin.go index 3ffca8d..f59deb9 100644 --- a/cpu/cpu_darwin.go +++ b/cpu/cpu_darwin.go @@ -152,6 +152,10 @@ func perCPUTimes(machLib *common.Library) ([]TimesStat, error) { return nil, fmt.Errorf("host_processor_info error=%d", status) } + if cpuload == nil { + return nil, fmt.Errorf("host_processor_info returned nil cpuload") + } + defer vmDeallocate(machTaskSelf(), uintptr(unsafe.Pointer(cpuload)), uintptr(ncpu)) ret := []TimesStat{} From 244d63ddfcdfa8e35f6ffcb99919c3e235f422d5 Mon Sep 17 00:00:00 2001 From: Dmytro Vovk Date: Tue, 8 Apr 2025 12:24:41 +0100 Subject: [PATCH 2/2] fix lint --- cpu/cpu_darwin.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpu/cpu_darwin.go b/cpu/cpu_darwin.go index f59deb9..c61a470 100644 --- a/cpu/cpu_darwin.go +++ b/cpu/cpu_darwin.go @@ -5,6 +5,7 @@ package cpu import ( "context" + "errors" "fmt" "strconv" "strings" @@ -153,7 +154,7 @@ func perCPUTimes(machLib *common.Library) ([]TimesStat, error) { } if cpuload == nil { - return nil, fmt.Errorf("host_processor_info returned nil cpuload") + return nil, errors.New("host_processor_info returned nil cpuload") } defer vmDeallocate(machTaskSelf(), uintptr(unsafe.Pointer(cpuload)), uintptr(ncpu))