}
func (f *File) bytesLeft() (left int64) {
- return fileBytesLeft(int64(f.t.usualPieceSize()), f.firstPieceIndex(), f.endPieceIndex(), f.offset, f.length, &f.t._completedPieces)
+ return fileBytesLeft(int64(f.t.usualPieceSize()), f.BeginPieceIndex(), f.EndPieceIndex(), f.offset, f.length, &f.t._completedPieces)
}
// The relative file path for a multi-file torrent, and the torrent name for a
f.t.cl.lock()
if prio != f.prio {
f.prio = prio
- f.t.updatePiecePriorities(f.firstPieceIndex(), f.endPieceIndex(), "File.SetPriority")
+ f.t.updatePiecePriorities(f.BeginPieceIndex(), f.EndPieceIndex(), "File.SetPriority")
}
f.t.cl.unlock()
}
// Returns the priority per File.SetPriority.
func (f *File) Priority() (prio piecePriority) {
- f.t.cl.lock()
+ f.t.cl.rLock()
prio = f.prio
- f.t.cl.unlock()
+ f.t.cl.rUnlock()
return
}
// Returns the index of the first piece containing data for the file.
-func (f *File) firstPieceIndex() pieceIndex {
+func (f *File) BeginPieceIndex() int {
if f.t.usualPieceSize() == 0 {
return 0
}
}
// Returns the index of the piece after the last one containing data for the file.
-func (f *File) endPieceIndex() pieceIndex {
+func (f *File) EndPieceIndex() int {
if f.t.usualPieceSize() == 0 {
return 0
}