diff options
Diffstat (limited to 'acf/error.lua')
-rw-r--r-- | acf/error.lua | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/acf/error.lua b/acf/error.lua index 26dfb86..61788e5 100644 --- a/acf/error.lua +++ b/acf/error.lua @@ -13,9 +13,6 @@ local util = require('acf.util') require 'json' -local function pack(...) return arg end - - local ErrorTable = class() function ErrorTable:init() self.errors = {} end @@ -43,6 +40,7 @@ ErrorDict = class(ErrorTable) function ErrorDict:collect(func, ...) local function pack(success, ...) + local arg = {...} return success, success and arg or arg[1] end @@ -78,7 +76,7 @@ end function relabel(label, ...) local err = ErrorDict() - local res = pack(err:collect(unpack(arg))) + local res = {err:collect(...)} if err:success() then return unpack(res) end elist = ErrorList(label) @@ -90,7 +88,7 @@ end function call(...) local err = ErrorDict() - local res = pack(err:collect(unpack(arg))) + local res = {err:collect(...)} if err:success() then return true, unpack(res) end if err.errors.system then error(err.errors.system[1]) end return false, err.errors |