storage/piece_resource.go | 6 +++++- diff --git a/storage/piece_resource.go b/storage/piece_resource.go index 66d877fbe6c97d4c37dd7a0538e0999eb6ebec83..8df443896668e15459cb09a041cbcc89aed3f0e5 100644 --- a/storage/piece_resource.go +++ b/storage/piece_resource.go @@ -191,7 +191,11 @@ if err != nil { panic(err) } r := bytes.NewReader(b) - err = i.Put(r) + if sp, ok := i.(SizedPutter); ok { + err = sp.PutSized(r, r.Size()) + } else { + err = i.Put(r) + } n = len(b) - r.Len() return }