pkg/fileutil: improve CopyFile

- check Close error
- preserve modification time
This commit is contained in:
Dmitry Vyukov 2017-06-19 16:35:52 +02:00
parent 261cdc2564
commit 7e63cfac7f

View File

@ -21,6 +21,10 @@ func CopyFile(oldFile, newFile string) error {
return err
}
defer oldf.Close()
stat, err := oldf.Stat()
if err != nil {
return err
}
newf, err := os.Create(newFile)
if err != nil {
return err
@ -30,6 +34,12 @@ func CopyFile(oldFile, newFile string) error {
if err != nil {
return err
}
if err := newf.Close(); err != nil {
return err
}
if err := os.Chtimes(newFile, stat.ModTime(), stat.ModTime()); err != nil {
return err
}
return nil
}