diff --git a/sys/apps/shell b/sys/apps/shell index 20b8ef5..124d9fc 100644 --- a/sys/apps/shell +++ b/sys/apps/shell @@ -516,6 +516,7 @@ local function autocomplete(line) for _,sItem in pairs(results) do nMaxLen = math.max(string.len(sItem) + 1, nMaxLen) end + local w = term.getSize() local nCols = math.floor(w / nMaxLen) if #tDirs < nCols then for _ = #tDirs + 1, nCols do diff --git a/sys/network/peripheral.lua b/sys/network/peripheral.lua index a491b30..89e2b86 100644 --- a/sys/network/peripheral.lua +++ b/sys/network/peripheral.lua @@ -69,7 +69,11 @@ Event.addRoutine(function() break end if peripheral[data.fn] then + -- need to trigger an error on the other end + -- local s, m = pcall() socket:write({ peripheral[data.fn](table.unpack(data.args)) }) + else + socket:write({ false, "Invalid function: " .. data.fn }) end end diff --git a/sys/network/proxy.lua b/sys/network/proxy.lua index 65ada42..46ec14b 100644 --- a/sys/network/proxy.lua +++ b/sys/network/proxy.lua @@ -13,6 +13,11 @@ Event.addRoutine(function() if api then local proxy = _G[api] + if not proxy then + print('proxy: invalid API') + return + end + local methods = { } for k,v in pairs(proxy) do if type(v) == 'function' then