diff options
author | Fumitoshi Ukai <fumitoshi.ukai@gmail.com> | 2015-06-02 15:51:16 +0900 |
---|---|---|
committer | Fumitoshi Ukai <fumitoshi.ukai@gmail.com> | 2015-06-02 15:51:16 +0900 |
commit | bc40a46e5c81b79e51bc23a8a539172049222568 (patch) | |
tree | eae0395916f1e1fce4a0c2a332790812c7081141 /fileutil.go | |
parent | ed9a6156254afd42c2f5fd213d6f6483bee31ac4 (diff) | |
download | kati-bc40a46e5c81b79e51bc23a8a539172049222568.tar.gz |
fix readFile - fd leak
use ioutil.ReadFile instead.
exists uses os.Stat and os.IsNotExist
Diffstat (limited to 'fileutil.go')
-rw-r--r-- | fileutil.go | 30 |
1 files changed, 3 insertions, 27 deletions
diff --git a/fileutil.go b/fileutil.go index 2224d7d..46dd9b4 100644 --- a/fileutil.go +++ b/fileutil.go @@ -1,35 +1,11 @@ package main -import ( - "fmt" - "os" -) +import "os" func exists(filename string) bool { - f, err := os.Open(filename) - if err != nil { + _, err := os.Stat(filename) + if os.IsNotExist(err) { return false } - f.Close() return true } - -func readFile(filename string) ([]byte, error) { - f, err := os.Open(filename) - if err != nil { - return nil, err - } - fi, err := f.Stat() - if err != nil { - return nil, err - } - buf := make([]byte, fi.Size()) - n, err := f.Read(buf) - if err != nil { - return nil, err - } - if n != len(buf) { - return nil, fmt.Errorf("Unexpected file size: %d vs %d", n, len(buf)) - } - return buf, nil -} |