diff --git a/src/server/torr/apihelper.go b/src/server/torr/apihelper.go index f8d0f47..4e432c6 100644 --- a/src/server/torr/apihelper.go +++ b/src/server/torr/apihelper.go @@ -65,6 +65,10 @@ func GetTorrent(hashHex string) *Torrent { go func() { tr, _ := NewTorrent(tor.TorrentSpec, bts) if tr != nil { + tr.Title = tor.Title + tr.Poster = tor.Poster + tr.Size = tor.Size + tr.Timestamp = tor.Timestamp tr.GotInfo() } }() diff --git a/src/server/torr/storage/torrstor/cache.go b/src/server/torr/storage/torrstor/cache.go index ea034df..9a5a581 100644 --- a/src/server/torr/storage/torrstor/cache.go +++ b/src/server/torr/storage/torrstor/cache.go @@ -4,11 +4,12 @@ import ( "sort" "sync" - "github.com/anacrolix/torrent" "server/log" "server/settings" "server/torr/utils" + "github.com/anacrolix/torrent" + "github.com/anacrolix/torrent/metainfo" "github.com/anacrolix/torrent/storage" ) @@ -137,14 +138,15 @@ func (c *Cache) getRemPieces() []*Piece { loading := 0 used := c.bufferPull.Used() for u := range used { - v := c.pieces[u] - if v.Size > 0 { - if v.Id > 0 { - pieces = append(pieces, v) - } - fill += v.Size - if !v.complete { - loading++ + if v, ok := c.pieces[u]; ok { + if v.Size > 0 { + if v.Id > 0 { + pieces = append(pieces, v) + } + fill += v.Size + if !v.complete { + loading++ + } } } }