From 9e50da4892e52a613e0183d83c8d597a137e88eb Mon Sep 17 00:00:00 2001 From: Matt Joiner Date: Thu, 28 Jan 2016 13:21:50 +1100 Subject: [PATCH] Fix stall if data goes missing during a read --- reader.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/reader.go b/reader.go index 8c3fa56f..acc481cf 100644 --- a/reader.go +++ b/reader.go @@ -73,7 +73,14 @@ func (r *Reader) available(off, max int64) (ret int64) { return } +func (r *Reader) tickleClient() { + r.t.torrent.readersChanged(r.t.cl) +} + func (r *Reader) waitReadable(off int64) { + // We may have been sent back here because we were told we could read but + // it failed. + r.tickleClient() r.t.cl.event.Wait() } -- 2.48.1