Per suggestions

pull/144/head
Robert Weber 9 years ago
parent 4dcb099f3d
commit c804a9e755

@ -3,14 +3,11 @@
package common package common
import ( import (
"errors"
"os/exec" "os/exec"
"strconv" "strconv"
"strings" "strings"
) )
var ErrorNoChildren = errors.New("Process does not have children or does not exist")
func CallLsof(invoke Invoker, pid int32, args ...string) ([]string, error) { func CallLsof(invoke Invoker, pid int32, args ...string) ([]string, error) {
var cmd []string var cmd []string
if pid == 0 { // will get from all processes. 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...) out, err := invoke.Command(pgrep, cmd...)
if err != nil { if err != nil {
return []int32{}, ErrorNoChildren return []int32{}, err
} }
lines := strings.Split(string(out), "\n") lines := strings.Split(string(out), "\n")
ret := make([]int32, 0, len(lines)) ret := make([]int32, 0, len(lines))

@ -19,7 +19,7 @@ import (
"github.com/shirou/gopsutil/net" "github.com/shirou/gopsutil/net"
) )
var ErrorNoChildren = errors.New("Process does not have children") var ErrorNoChildren = errors.New("process does not have children")
const ( const (
PrioProcess = 0 // linux/resource.h PrioProcess = 0 // linux/resource.h
@ -208,7 +208,7 @@ func (p *Process) MemoryPercent() (float32, error) {
func (p *Process) Children() ([]*Process, error) { func (p *Process) Children() ([]*Process, error) {
pids, err := common.CallPgrep(invoke, p.Pid) pids, err := common.CallPgrep(invoke, p.Pid)
if err != nil { if err != nil {
if err == common.ErrorNoChildren { if pids == nil || len(pids) == 0 {
return nil, ErrorNoChildren return nil, ErrorNoChildren
} }
return nil, err return nil, err

Loading…
Cancel
Save