made libmtar cope with lower memory systems at the expense of speed

This commit is contained in:
Izaya 2020-07-13 00:58:19 +10:00
parent 5db20adefd
commit 8865768576

View File

@ -43,7 +43,9 @@ function mtar.iter(stream) -- table -- function -- Given buffer *stream*, return
return rb return rb
end end
return function() return function()
stream:read(remain) while remain > 0 do
remain=remain-#stream:read(math.min(remain,2048))
end
local nlen = toint(stream:read(2) or "\0\0") local nlen = toint(stream:read(2) or "\0\0")
if nlen == 0 then if nlen == 0 then
return return