diff --git a/internal/repository/pool.go b/internal/repository/pool.go index 9c7450d5c..b87791f14 100644 --- a/internal/repository/pool.go +++ b/internal/repository/pool.go @@ -8,7 +8,7 @@ import ( var bufPool = sync.Pool{ New: func() interface{} { - return make([]byte, chunker.MinSize) + return make([]byte, chunker.MaxSize/3) }, } diff --git a/internal/repository/repository.go b/internal/repository/repository.go index 3a1ce40c2..4a76f4025 100644 --- a/internal/repository/repository.go +++ b/internal/repository/repository.go @@ -214,11 +214,11 @@ func (r *Repository) SaveAndEncrypt(ctx context.Context, t restic.BlobType, data // get buf from the pool ciphertext := getBuf() - defer freeBuf(ciphertext) ciphertext = ciphertext[:0] nonce := crypto.NewRandomNonce() ciphertext = append(ciphertext, nonce...) + defer freeBuf(ciphertext) // encrypt blob ciphertext = r.key.Seal(ciphertext, nonce, data, nil)