fix nil piece

This commit is contained in:
yourok
2023-08-27 21:46:20 +03:00
parent e480ecb093
commit dd26ff3d5f
2 changed files with 34 additions and 1 deletions

View File

@@ -83,7 +83,7 @@ func (c *Cache) Piece(m metainfo.Piece) storage.PieceImpl {
if val, ok := c.pieces[m.Index()]; ok { if val, ok := c.pieces[m.Index()]; ok {
return val return val
} }
return nil return &PieceFake{}
} }
func (c *Cache) Close() error { func (c *Cache) Close() error {

View File

@@ -0,0 +1,33 @@
package torrstor
import (
"errors"
"github.com/anacrolix/torrent/storage"
)
type PieceFake struct{}
func (PieceFake) ReadAt(p []byte, off int64) (n int, err error) {
err = errors.New("fake")
return
}
func (PieceFake) WriteAt(p []byte, off int64) (n int, err error) {
err = errors.New("fake")
return
}
func (PieceFake) MarkComplete() error {
return errors.New("fake")
}
func (PieceFake) MarkNotComplete() error {
return errors.New("fake")
}
func (PieceFake) Completion() storage.Completion {
return storage.Completion{
Complete: false,
Ok: true,
}
}