Browse Source

[Fix] Deal with non-key arguments in lua_redis.exec_script

tags/1.7.0
Andrew Lewis 6 years ago
parent
commit
1e54b03ed6
2 changed files with 7 additions and 2 deletions
  1. 6
    1
      lualib/lua_redis.lua
  2. 1
    1
      src/plugins/lua/dmarc.lua

+ 6
- 1
lualib/lua_redis.lua View File

@@ -843,7 +843,7 @@ local function add_redis_script(script, redis_params)
end
exports.add_redis_script = add_redis_script

local function exec_redis_script(id, params, callback, args)
local function exec_redis_script(id, params, callback, args, aargs)
local args_modified = false

if not redis_scripts[id] then
@@ -881,6 +881,11 @@ local function exec_redis_script(id, params, callback, args)
if not args_modified then
table.insert(args, 1, tostring(#args))
table.insert(args, 1, script.sha)
if type(aargs) == 'table' then
for _, a in ipairs(aargs) do
table.insert(args, a)
end
end
args_modified = true
end


+ 1
- 1
src/plugins/lua/dmarc.lua View File

@@ -542,7 +542,7 @@ local function dmarc_callback(task)

if report_data then
rspamd_redis.exec_redis_script(take_report_id, {task = task, is_write = true}, dmarc_report_cb,
{2, idx_key, dmarc_domain_key, hfromdom, report_data})
{idx_key, dmarc_domain_key}, {hfromdom, report_data})
end
end


Loading…
Cancel
Save