]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Fix passing of methods arguments
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 14 May 2020 11:43:32 +0000 (12:43 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 14 May 2020 11:43:32 +0000 (12:43 +0100)
lualib/lua_selectors/init.lua

index ba20810c5837ac41430ea6c5784eaf1a2470d70a..8de79f7679ba15ded7e300dad16254f022bc3295 100644 (file)
@@ -102,7 +102,7 @@ local function process_selector(task, sel)
     if meth.types[etype] then
       lua_util.debugm(M, task, 'apply method `%s` to %s',
           meth.name, etype)
-      input,etype = meth.process(input, etype)
+      input,etype = meth.process(input, etype, meth.args)
     else
       local pt = pure_type(etype)
 
@@ -342,7 +342,7 @@ exports.parse_selector = function(cfg, str)
               return inp[method_name],'string'
             else
               -- We call method unpacking arguments and dropping all but the first result returned
-              local ret = (inp[method_name](inp, unpack_function(args)))
+              local ret = (inp[method_name](inp, unpack_function(args or E)))
               local ret_type = type(ret)
               -- Now apply types heuristic
               if ret_type == 'string' then