From: Alex Brainman Date: Fri, 17 Sep 2010 02:35:34 +0000 (+1000) Subject: os: make RemoveAll() work on windows X-Git-Tag: weekly.2010-09-22~48 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=9997dae7a3499a3f180e7e34df0bb22fa487ad85;p=gostls13.git os: make RemoveAll() work on windows R=golang-dev, rsc1 CC=golang-dev https://golang.org/cl/2212041 --- 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 {