From 4ca134a41ccf04ae8ae66f7ea609a9285a81a8ee Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Sun, 5 Feb 2017 15:40:30 +0100 Subject: [PATCH] prune: Close backend reader after download Closes #777 --- src/restic/repository/repack.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/restic/repository/repack.go b/src/restic/repository/repack.go index 59bc70b68..d0923cc75 100644 --- a/src/restic/repository/repack.go +++ b/src/restic/repository/repack.go @@ -35,14 +35,16 @@ func Repack(repo restic.Repository, packs restic.IDSet, keepBlobs restic.BlobSet return err } - defer beRd.Close() - hrd := hashing.NewReader(beRd, sha256.New()) packLength, err := io.Copy(tempfile, hrd) if err != nil { return errors.Wrap(err, "Copy") } + if err = beRd.Close(); err != nil { + return errors.Wrap(err, "Close") + } + hash := restic.IDFromHash(hrd.Sum(nil)) debug.Log("pack %v loaded (%d bytes), hash %v", packID.Str(), packLength, hash.Str())