Stop AfterFunc timer after findCmd.Wait regardless of errors to prevent memory leak

This commit is contained in:
Stefan Majer 2017-10-24 15:18:07 +02:00
parent 99716b05db
commit 4a778288ee

View File

@ -603,10 +603,11 @@ func GetDirInodeUsage(dir string, timeout time.Duration) (uint64, error) {
glog.Infof("killing cmd %v due to timeout(%s)", findCmd.Args, timeout.String())
findCmd.Process.Kill()
})
if err := findCmd.Wait(); err != nil {
err := findCmd.Wait()
timer.Stop()
if err != nil {
return 0, fmt.Errorf("cmd %v failed. stderr: %s; err: %v", findCmd.Args, stderr.String(), err)
}
timer.Stop()
return counter.bytesWritten, nil
}