Browse Source

fix edge case where io.open(whatever):read() returns nil

master
XeonSquared 10 months ago
parent
commit
a33476cf00
1 changed files with 1 additions and 1 deletions
  1. +1
    -1
      lib/libmtar.lua

+ 1
- 1
lib/libmtar.lua View File

@@ -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…
Cancel
Save