aboutsummaryrefslogtreecommitdiff
path: root/fileutil.go
diff options
context:
space:
mode:
authorFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-02 15:51:16 +0900
committerFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-02 15:51:16 +0900
commitbc40a46e5c81b79e51bc23a8a539172049222568 (patch)
treeeae0395916f1e1fce4a0c2a332790812c7081141 /fileutil.go
parented9a6156254afd42c2f5fd213d6f6483bee31ac4 (diff)
downloadkati-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.go30
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
-}