diff options
| author | ruki <[email protected]> | 2019-08-17 11:15:16 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2019-08-17 11:15:16 +0800 |
| commit | d5b72e56e42746b7e8bae07d3a4070bd2721829b (patch) | |
| tree | 1304a524fd71b40ee5ff47b7b98ff68ccfb24582 /xmake/core/base/process.lua | |
| parent | 45a548d4329975c113ac0f225f98afcf5f2b0724 (diff) | |
improve waitlist
Diffstat (limited to 'xmake/core/base/process.lua')
| -rw-r--r-- | xmake/core/base/process.lua | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/xmake/core/base/process.lua b/xmake/core/base/process.lua index 3102da184..0541f98c6 100644 --- a/xmake/core/base/process.lua +++ b/xmake/core/base/process.lua @@ -140,6 +140,20 @@ end -- end -- function process.waitlist(proclist, timeout) + local procs = {} + for _, proc in ipairs(proclist) do + table.insert(procs, proc._PROC) + end + local count, list = process._waitlist(procs, timeout) + if count > 0 and list then + for _, procinfo in ipairs(list) do + local proc = procinfo[1] + local index = procinfo[2] + procinfo[1] = proclist[index] + assert(proc == procinfo[1]._PROC) + end + end + return count, list end -- async run task and echo waiting info |
