Properly handle read-write/read-only windows<->posix (fixes #236)

This commit is contained in:
Jakob Borg
2014-05-19 23:42:08 +02:00
parent dba40eefb1
commit e359b146aa
3 changed files with 36 additions and 7 deletions

View File

@@ -12,11 +12,13 @@ import (
func Rename(from, to string) error {
if runtime.GOOS == "windows" {
os.Chmod(to, 0666) // Make sure the file is user writeable
err := os.Remove(to)
if err != nil && !os.IsNotExist(err) {
l.Warnln(err)
}
}
defer os.Remove(from) // Don't leave a dangling temp file in case of rename error
return os.Rename(from, to)
}