From 8e722d8fee397608260b2fa94c8d942bf7e1dd59 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Mon, 23 Jan 2017 18:45:15 +0100 Subject: [PATCH] Fix saving pack: close temp file before removing --- src/restic/repository/packer_manager.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/restic/repository/packer_manager.go b/src/restic/repository/packer_manager.go index 95fe10c0a..e3f49f389 100644 --- a/src/restic/repository/packer_manager.go +++ b/src/restic/repository/packer_manager.go @@ -111,15 +111,15 @@ func (r *Repository) savePacker(p *Packer) error { return err } - f, err := fs.Open(p.tmpfile.Name()) + _, err = p.tmpfile.Seek(0, 0) if err != nil { - return errors.Wrap(err, "Open") + return errors.Wrap(err, "Seek") } id := restic.IDFromHash(p.hw.Sum(nil)) h := restic.Handle{Type: restic.DataFile, Name: id.String()} - err = r.be.Save(h, f) + err = r.be.Save(h, p.tmpfile) if err != nil { debug.Log("Save(%v) error: %v", h, err) return err @@ -127,7 +127,7 @@ func (r *Repository) savePacker(p *Packer) error { debug.Log("saved as %v", h) - err = f.Close() + err = p.tmpfile.Close() if err != nil { return errors.Wrap(err, "close tempfile") }