From edcb9deb95e294e4b0a766620a4fac18d1367bc3 Mon Sep 17 00:00:00 2001 From: mlmhl <409107750@qq.com> Date: Mon, 10 Jul 2017 19:33:39 +0800 Subject: [PATCH] bug fix: initial infoHash for mmapStoragePiece --- storage/mmap.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/storage/mmap.go b/storage/mmap.go index bbc9ed03..9120c6f3 100644 --- a/storage/mmap.go +++ b/storage/mmap.go @@ -32,8 +32,9 @@ func NewMMapWithCompletion(baseDir string, completion PieceCompletion) ClientImp func (s *mmapStorage) OpenTorrent(info *metainfo.Info, infoHash metainfo.Hash) (t TorrentImpl, err error) { span, err := mMapTorrent(info, s.baseDir) t = &mmapTorrentStorage{ - span: span, - pc: s.pc, + infoHash: infoHash, + span: span, + pc: s.pc, } return } @@ -43,14 +44,16 @@ func (s *mmapStorage) Close() error { } type mmapTorrentStorage struct { - span mmap_span.MMapSpan - pc PieceCompletion + infoHash metainfo.Hash + span mmap_span.MMapSpan + pc PieceCompletion } func (ts *mmapTorrentStorage) Piece(p metainfo.Piece) PieceImpl { return mmapStoragePiece{ pc: ts.pc, p: p, + ih: ts.infoHash, ReaderAt: io.NewSectionReader(ts.span, p.Offset(), p.Length()), WriterAt: missinggo.NewSectionWriter(ts.span, p.Offset(), p.Length()), } -- 2.48.1