From e6cb0303adf8ab9d250fc542d7327a5f4992b6a8 Mon Sep 17 00:00:00 2001 From: Elton SV Date: Wed, 10 Nov 2021 18:45:35 +0530 Subject: [PATCH] Error out when the given duration is negative (#155) Validate processInfo period & log a fatal error in the case of negative duration. --- main.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/main.go b/main.go index 1b73131c..a85b0752 100644 --- a/main.go +++ b/main.go @@ -136,6 +136,9 @@ func processes() { } func processInfo(pid int, period time.Duration) { + if period < 0 { + log.Fatalf("Cannot determine CPU usage for negative duration %v", period) + } p, err := process.NewProcess(int32(pid)) if err != nil { log.Fatalf("Cannot read process info: %v", err) @@ -152,10 +155,8 @@ func processInfo(pid int, period time.Duration) { if v, err := p.CPUPercent(); err == nil { fmt.Printf("cpu usage:\t%.3f%%\n", v) } - if period > 0 { - if v, err := cpuPercentWithinTime(p, period); err == nil { - fmt.Printf("cpu usage (%v):\t%.3f%%\n", period, v) - } + if v, err := cpuPercentWithinTime(p, period); err == nil { + fmt.Printf("cpu usage (%v):\t%.3f%%\n", period, v) } if v, err := p.Username(); err == nil { fmt.Printf("username:\t%v\n", v)