From 32b0ccfdb03fb07217478d4c48e66d055652883d Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Fri, 16 Dec 2016 11:19:54 +0000 Subject: [PATCH] [Fix] Fix matching of the same patterns from different tries MFH: true --- src/plugins/lua/trie.lua | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plugins/lua/trie.lua b/src/plugins/lua/trie.lua index cad28cde5..876f2b0e2 100644 --- a/src/plugins/lua/trie.lua +++ b/src/plugins/lua/trie.lua @@ -54,13 +54,14 @@ local function tries_callback(task) return function (idx, pos) local param = params[idx] local pattern = patterns[idx] + local pattern_idx = pattern .. tostring(idx) .. type - if param['multi'] or not matched[pattern] then + if param['multi'] or not matched[pattern_idx] then rspamd_logger.debugm(N, task, "<%1> matched pattern %2 at pos %3", task:get_message_id(), pattern, pos) task:insert_result(param['symbol'], 1.0, type) if not param['multi'] then - matched[pattern] = true + matched[pattern_idx] = true end end end -- 2.39.5