Paranoid distrust of variable scoping

This commit is contained in:
Empathic Qubit 2021-05-08 00:07:52 -04:00
parent bd5b9cc4cb
commit 0d9afa4ced

View file

@ -174,8 +174,10 @@ return function(promise)
message(_M, 'Waiting for child processes to finish') message(_M, 'Waiting for child processes to finish')
local function readLoop(outputPipe, line) local function readLoop(outputPipe)
return util.promiseWrap(function() return util.promiseWrap(function()
return outputPipe:read("*l")
end):next(function(line)
if line == nil or line == "" then if line == nil or line == "" then
util.closeCmd(outputPipe) util.closeCmd(outputPipe)
end end
@ -216,19 +218,14 @@ return function(promise)
return return
end end
local line = outputPipe:read("*l") return readLoop(outputPipe)
return readLoop(outputPipe, line)
end) end)
end end
local waiters = {} local waiters = {}
for i=1,#speciesSlice,1 do for i=1,#speciesSlice,1 do
local outputPipe = _M.poppets[i].output local outputPipe = _M.poppets[i].output
local waiter = util.promiseWrap(function() local waiter = readLoop(outputPipe)
local line = outputPipe:read("*l")
return readLoop(outputPipe, line)
end)
table.insert(waiters, waiter) table.insert(waiters, waiter)
end end