diff --git a/lualib/lua_redis.lua b/lualib/lua_redis.lua index 61dc95a1c..7ecb3d424 100644 --- a/lualib/lua_redis.lua +++ b/lualib/lua_redis.lua @@ -57,7 +57,7 @@ local function rspamd_parse_redis_server(module_name, module_opts, no_fallback) end -- Store options - if not result['timeout'] and not result['timeout'] == default_timeout then + if not result['timeout'] or result['timeout'] == default_timeout then if options['timeout'] then result['timeout'] = tonumber(options['timeout']) else @@ -106,11 +106,19 @@ local function rspamd_parse_redis_server(module_name, module_opts, no_fallback) local ret = false if opts then - ret = try_load_redis_servers(opts, result) - end + if opts.redis then + ret = try_load_redis_servers(opts.redis, result) - if ret then - return result + if ret then + return result + end + end + + ret = try_load_redis_servers(opts, result) + + if ret then + return result + end end if no_fallback then return nil end