diff options
author | Alex Brainman <alex.brainman@gmail.com> | 2010-09-17 12:35:34 +1000 |
---|---|---|
committer | Alex Brainman <alex.brainman@gmail.com> | 2010-09-17 12:35:34 +1000 |
commit | 9997dae7a3499a3f180e7e34df0bb22fa487ad85 (patch) | |
tree | f3590195ab3bc890b139a2641f1d1ceeea2c948a | |
parent | 7534d40f6401817093711cc8d1f227abdaed5dd0 (diff) | |
download | go-9997dae7a3499a3f180e7e34df0bb22fa487ad85.tar.gz go-9997dae7a3499a3f180e7e34df0bb22fa487ad85.zip |
os: make RemoveAll() work on windows
R=golang-dev, rsc1
CC=golang-dev
https://golang.org/cl/2212041
-rw-r--r-- | src/pkg/os/path.go | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/pkg/os/path.go b/src/pkg/os/path.go index bea971375e..74c83ab17a 100644 --- a/src/pkg/os/path.go +++ b/src/pkg/os/path.go @@ -84,7 +84,6 @@ func RemoveAll(path string) Error { if err != nil { return err } - defer fd.Close() // Remove contents & return first error. err = nil @@ -105,6 +104,9 @@ func RemoveAll(path string) Error { } } + // Close directory, because windows won't remove opened directory. + fd.Close() + // Remove directory. err1 := Remove(path) if err == nil { |