diff --git a/internal/checker/checker.go b/internal/checker/checker.go index 1cee4355c..d6474f86e 100644 --- a/internal/checker/checker.go +++ b/internal/checker/checker.go @@ -605,11 +605,13 @@ func checkPackInner(ctx context.Context, r restic.Repository, id restic.ID, blob if err != nil { return &partialReadError{err} } + curPos += minHdrStart - curPos } // read remainder, which should be the pack header var err error - hdrBuf, err = io.ReadAll(bufRd) + hdrBuf = make([]byte, int(size-int64(curPos))) + _, err = io.ReadFull(bufRd, hdrBuf) if err != nil { return &partialReadError{err} }