From: Vsevolod Stakhov Date: Sun, 16 Dec 2018 17:10:17 +0000 (+0000) Subject: [Minor] Core: Fix disabling of symbols X-Git-Tag: 1.9.0~419 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=42116dc41f8d4141f11489298c811683b7ef7cf7;p=thirdparty%2Frspamd.git [Minor] Core: Fix disabling of symbols --- diff --git a/src/libserver/rspamd_symcache.c b/src/libserver/rspamd_symcache.c index 2eff438264..62340af3b0 100644 --- a/src/libserver/rspamd_symcache.c +++ b/src/libserver/rspamd_symcache.c @@ -2532,7 +2532,7 @@ rspamd_symcache_enable_symbol (struct rspamd_task *task, if (item) { dyn_item = rspamd_symcache_get_dynamic (checkpoint, item); - if (CHECK_FINISH_BIT (checkpoint, dyn_item)) { + if (!CHECK_FINISH_BIT (checkpoint, dyn_item)) { ret = TRUE; CLR_START_BIT (checkpoint, dyn_item); CLR_FINISH_BIT (checkpoint, dyn_item); @@ -2568,13 +2568,16 @@ rspamd_symcache_disable_symbol (struct rspamd_task *task, if (item) { dyn_item = rspamd_symcache_get_dynamic (checkpoint, item); - if (CHECK_START_BIT (checkpoint, dyn_item)) { + if (!CHECK_START_BIT (checkpoint, dyn_item)) { ret = TRUE; SET_START_BIT (checkpoint, dyn_item); SET_FINISH_BIT (checkpoint, dyn_item); } else { - msg_warn_task ("cannot disable symbol %s: already started", symbol); + if (!CHECK_FINISH_BIT (checkpoint, dyn_item)) { + msg_warn_task ("cannot disable symbol %s: already started", + symbol); + } } } }