From c804a9e755c3cb29d5b7e181dcd3ac7366524bc4 Mon Sep 17 00:00:00 2001 From: Robert Weber Date: Mon, 8 Feb 2016 09:26:35 -0700 Subject: [PATCH] Per suggestions --- internal/common/common_unix.go | 5 +---- process/process_linux.go | 4 ++-- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/internal/common/common_unix.go b/internal/common/common_unix.go index 1401626..6622eec 100644 --- a/internal/common/common_unix.go +++ b/internal/common/common_unix.go @@ -3,14 +3,11 @@ package common import ( - "errors" "os/exec" "strconv" "strings" ) -var ErrorNoChildren = errors.New("Process does not have children or does not exist") - func CallLsof(invoke Invoker, pid int32, args ...string) ([]string, error) { var cmd []string if pid == 0 { // will get from all processes. @@ -51,7 +48,7 @@ func CallPgrep(invoke Invoker, pid int32) ([]int32, error) { } out, err := invoke.Command(pgrep, cmd...) if err != nil { - return []int32{}, ErrorNoChildren + return []int32{}, err } lines := strings.Split(string(out), "\n") ret := make([]int32, 0, len(lines)) diff --git a/process/process_linux.go b/process/process_linux.go index 9e3a87e..deaf285 100644 --- a/process/process_linux.go +++ b/process/process_linux.go @@ -19,7 +19,7 @@ import ( "github.com/shirou/gopsutil/net" ) -var ErrorNoChildren = errors.New("Process does not have children") +var ErrorNoChildren = errors.New("process does not have children") const ( PrioProcess = 0 // linux/resource.h @@ -208,7 +208,7 @@ func (p *Process) MemoryPercent() (float32, error) { func (p *Process) Children() ([]*Process, error) { pids, err := common.CallPgrep(invoke, p.Pid) if err != nil { - if err == common.ErrorNoChildren { + if pids == nil || len(pids) == 0 { return nil, ErrorNoChildren } return nil, err