From: Vsevolod Stakhov Date: Wed, 14 Mar 2018 13:43:23 +0000 (+0000) Subject: [Fix] Do not cache metric result X-Git-Tag: 1.7.1~50 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=77d8fb13d64763071febb3980c016c5f4976b70d;p=thirdparty%2Frspamd.git [Fix] Do not cache metric result --- diff --git a/src/lua/lua_task.c b/src/lua/lua_task.c index 89f35e90da..b0c7c8fd50 100644 --- a/src/lua/lua_task.c +++ b/src/lua/lua_task.c @@ -4180,19 +4180,12 @@ lua_task_get_metric_action (lua_State *L) enum rspamd_action_type action; if (task) { - if ((metric_res = task->result) != NULL) { - if (task->result->action == METRIC_ACTION_MAX) { - action = rspamd_check_action_metric (task, metric_res); - } - else { - action = task->result->action; - } - - lua_pushstring (L, rspamd_action_to_str (action)); - } - else { - lua_pushnil (L); + if ((metric_res = task->result) == NULL) { + metric_res = rspamd_create_metric_result (task); } + + action = rspamd_check_action_metric (task, metric_res); + lua_pushstring (L, rspamd_action_to_str (action)); } else { return luaL_error (L, "invalid arguments");