summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2019-10-04 10:58:26 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2019-10-04 10:58:26 +0100
commite7ec90d67fa136d385a72c4393cfd018307d356a (patch)
treece921c5047bac5eca87cf7e252cf358700831e76 /src
parentd8ec444ddbf9cd7e908e64865552e90d3c55e761 (diff)
downloadrspamd-e7ec90d67fa136d385a72c4393cfd018307d356a.tar.gz
rspamd-e7ec90d67fa136d385a72c4393cfd018307d356a.zip
[Minor] Try to fix finishing handlers
Diffstat (limited to 'src')
-rw-r--r--src/libserver/worker_util.c3
-rw-r--r--src/worker.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/libserver/worker_util.c b/src/libserver/worker_util.c
index 0b8600160..0007fbe35 100644
--- a/src/libserver/worker_util.c
+++ b/src/libserver/worker_util.c
@@ -107,6 +107,9 @@ rspamd_worker_check_finished (EV_P_ ev_timer *w, int revents)
if (refcount == 1) {
ev_break (EV_A_ EVBREAK_ONE);
}
+ else {
+ ev_timer_again (EV_A_ w);
+ }
}
}
diff --git a/src/worker.c b/src/worker.c
index 0ed298181..349a0ea92 100644
--- a/src/worker.c
+++ b/src/worker.c
@@ -76,7 +76,7 @@ rspamd_worker_finalize (gpointer user_data)
if (!(task->flags & RSPAMD_TASK_FLAG_PROCESSING)) {
msg_info_task ("finishing actions has been processed, terminating");
- ev_break (task->event_loop, EVBREAK_ALL);
+ /* ev_break (task->event_loop, EVBREAK_ALL); */
rspamd_session_destroy (task->s);
return TRUE;