summaryrefslogtreecommitdiffstats
path: root/src/controller.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-01-09 21:57:36 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-01-09 21:57:36 +0000
commit42e13bdaa1afee59cbbd62b2001e05e4f53f4888 (patch)
treed6efc5237ebd30b84b470039f06591dbc701f377 /src/controller.c
parentdefd16920cb48f0fc1d2074ab551ba5b3b008e11 (diff)
downloadrspamd-42e13bdaa1afee59cbbd62b2001e05e4f53f4888.tar.gz
rspamd-42e13bdaa1afee59cbbd62b2001e05e4f53f4888.zip
Fix learn errors reporting
Diffstat (limited to 'src/controller.c')
-rw-r--r--src/controller.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/controller.c b/src/controller.c
index e5b06c2db..bef6fa61b 100644
--- a/src/controller.c
+++ b/src/controller.c
@@ -1199,11 +1199,18 @@ rspamd_controller_learn_fin_task (void *ud)
}
if (RSPAMD_TASK_IS_PROCESSED (task)) {
- msg_info_session ("<%s> learned message as %s: %s",
- rspamd_inet_address_to_string (session->from_addr),
- session->is_spam ? "spam" : "ham",
- task->message_id);
- rspamd_controller_send_string (conn_ent, "{\"success\":true}");
+ if (task->err) {
+ rspamd_controller_send_error (conn_ent, task->err->code,
+ task->err->message);
+ }
+ else {
+ msg_info_session ("<%s> learned message as %s: %s",
+ rspamd_inet_address_to_string (session->from_addr),
+ session->is_spam ? "spam" : "ham",
+ task->message_id);
+ rspamd_controller_send_string (conn_ent, "{\"success\":true}");
+ }
+
return TRUE;
}