fix edge case where io.open(whatever):read() returns nil
This commit is contained in:
parent
c2bbd7d2ca
commit
a33476cf00
@ -24,7 +24,7 @@ end
|
|||||||
function mtar.iter(stream) -- table -- function -- Given buffer *stream*, returns an iterator suitable for use with *for* that returns, for each iteration, the file name, a function to read from the file, and the length of the file.
|
function mtar.iter(stream) -- table -- function -- Given buffer *stream*, returns an iterator suitable for use with *for* that returns, for each iteration, the file name, a function to read from the file, and the length of the file.
|
||||||
local remain = 0
|
local remain = 0
|
||||||
local function read(n)
|
local function read(n)
|
||||||
local rb = stream:read(math.min(n,remain))
|
local rb = stream:read(math.min(n,remain)) or ""
|
||||||
remain = remain - rb:len()
|
remain = remain - rb:len()
|
||||||
return rb
|
return rb
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user