From: Vsevolod Stakhov Date: Fri, 23 Jul 2010 15:42:20 +0000 (+0400) Subject: * Save in regexp cache the whole regexp with header name (if exists) and with flags X-Git-Tag: 0.3.1~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a8c30c78940a9153de23dc4d031273649e93cce;p=thirdparty%2Frspamd.git * Save in regexp cache the whole regexp with header name (if exists) and with flags This issue can be a reason why similar regexp are NOT working for different headers --- diff --git a/src/expressions.c b/src/expressions.c index f28f38efb3..447bdcbc22 100644 --- a/src/expressions.c +++ b/src/expressions.c @@ -704,7 +704,8 @@ parse_regexp (memory_pool_t * pool, char *line, gboolean raw_mode) } } result->regexp = g_regex_new (begin, regexp_flags, 0, &err); - result->regexp_text = memory_pool_strdup (pool, begin); + *end = '/'; + result->regexp_text = memory_pool_strdup (pool, line); memory_pool_add_destructor (pool, (pool_destruct_func) g_regex_unref, (void *)result->regexp); if (result->regexp == NULL || err != NULL) {