aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/expressions.c16
-rw-r--r--src/plugins/surbl.c2
2 files changed, 15 insertions, 3 deletions
diff --git a/src/expressions.c b/src/expressions.c
index 683e13dd8..c1cd8c0bd 100644
--- a/src/expressions.c
+++ b/src/expressions.c
@@ -458,16 +458,28 @@ parse_regexp (memory_pool_t *pool, char *line)
return NULL;
}
/* First try to find header name */
- begin = strchr (line, '=');
+ begin = strchr (line, '/');
if (begin != NULL) {
*begin = '\0';
+ end = strchr (line, '=');
+ *begin = '/';
+ if (end) {
+ *end = '\0';
+ result->header = memory_pool_strdup (pool, line);
+ result->type = REGEXP_HEADER;
+ *end = '=';
+ line = end;
+ }
+ }
+ else {
+ *begin = '\0';
result->header = memory_pool_strdup (pool, line);
result->type = REGEXP_HEADER;
*begin = '=';
line = begin;
}
/* Find begin of regexp */
- while (*line != '/') {
+ while (*line && *line != '/') {
line ++;
}
if (*line != '\0') {
diff --git a/src/plugins/surbl.c b/src/plugins/surbl.c
index 0fe64ba2f..aacc7120b 100644
--- a/src/plugins/surbl.c
+++ b/src/plugins/surbl.c
@@ -222,7 +222,7 @@ surbl_module_config (struct config_file *cfg)
surbl_module_ctx->suffixes = g_list_prepend (surbl_module_ctx->suffixes, new_suffix);
}
- return 0;
+ return TRUE;
}
int