From: Vsevolod Stakhov Date: Mon, 12 May 2014 13:52:39 +0000 (+0100) Subject: Fix issue in task processing. X-Git-Tag: 0.7.0~218 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d7941731d1f63381c791e1e306cefc1eba732517;p=thirdparty%2Frspamd.git Fix issue in task processing. --- diff --git a/src/libserver/task.c b/src/libserver/task.c index 00ff9003d4..d19362fca5 100644 --- a/src/libserver/task.c +++ b/src/libserver/task.c @@ -325,7 +325,6 @@ rspamd_task_process (struct rspamd_task *task, if (task->is_skipped) { /* Call write_socket to write reply and exit */ task->state = WRITE_REPLY; - return TRUE; } } else { @@ -333,8 +332,9 @@ rspamd_task_process (struct rspamd_task *task, /* We want fin_task after pre filters are processed */ task->s->wanna_die = TRUE; task->state = WAIT_PRE_FILTER; - check_session_pending (task->s); } + check_session_pending (task->s); + return TRUE; } diff --git a/src/worker.c b/src/worker.c index 20945bd89e..229ee1a4ea 100644 --- a/src/worker.c +++ b/src/worker.c @@ -127,7 +127,9 @@ rspamd_worker_body_handler (struct rspamd_http_connection *conn, return 0; } - rspamd_task_process (task, msg, ctx->classify_pool, TRUE); + if (!rspamd_task_process (task, msg, ctx->classify_pool, TRUE)) { + rspamd_protocol_write_reply (task); + } return 0; }