Browse Source

Merge pull request #10 from tendermint/bugfix/rotating-fails-on-windows

Close file before renaming it
pull/1842/head
Ethan Buchman 8 years ago
committed by GitHub
parent
commit
da68014a50
1 changed files with 7 additions and 5 deletions
  1. +7
    -5
      autofile/group.go

+ 7
- 5
autofile/group.go View File

@ -224,15 +224,17 @@ func (g *Group) RotateFile() {
g.mtx.Lock()
defer g.mtx.Unlock()
dstPath := filePathForIndex(g.Head.Path, g.maxIndex, g.maxIndex+1)
err := os.Rename(g.Head.Path, dstPath)
if err != nil {
headPath := g.Head.Path
if err := g.Head.closeFile(); err != nil {
panic(err)
}
err = g.Head.closeFile()
if err != nil {
indexPath := filePathForIndex(headPath, g.maxIndex, g.maxIndex+1)
if err := os.Rename(headPath, indexPath); err != nil {
panic(err)
}
g.maxIndex += 1
}


Loading…
Cancel
Save