Quick fix for using withReadableRange with unsafe inputs

This commit is contained in:
Zahary Karadjov 2020-05-25 03:57:18 +03:00
commit 0ca39dcd33
No known key found for this signature in database
GPG key ID: C8936F8A3073D609

View file

@ -300,6 +300,7 @@ proc limitReadableRange(s: InputStream, rangeLen: Natural): Natural =
let runway = s.span.len let runway = s.span.len
if rangeLen > runway: if rangeLen > runway:
fsAssert s.buffers != nil
return s.buffers.setFauxEof(rangeLen - runway + s.spanEndPos) return s.buffers.setFauxEof(rangeLen - runway + s.spanEndPos)
else: else:
s.span.endAddr = offset(s.span.startAddr, rangeLen) s.span.endAddr = offset(s.span.startAddr, rangeLen)