From de56563f68a2127119deb5bbbb26cfc3b12369fe Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sat, 10 Jun 2017 12:39:30 +0100 Subject: [PATCH] [Fix] Fix order of operations to avoid race condition --- src/plugins/surbl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/plugins/surbl.c b/src/plugins/surbl.c index c84cfdc88..286abf34c 100644 --- a/src/plugins/surbl.c +++ b/src/plugins/surbl.c @@ -1801,10 +1801,7 @@ surbl_continue_process_handler (lua_State *L) param = (struct redirector_param *)lua_topointer (L, 2); if (param != NULL) { - task = param->task; - rspamd_session_watcher_pop (task->s, param->w); - param->w = NULL; if (nurl != NULL) { msg_info_surbl ("<%s> got reply from redirector: '%*s' -> '%*s'", @@ -1841,6 +1838,9 @@ surbl_continue_process_handler (lua_State *L) param->task->message_id, param->url->urllen, param->url->string); } + + rspamd_session_watcher_pop (task->s, param->w); + param->w = NULL; } else { return luaL_error (L, "invalid arguments"); -- 2.39.5