aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/libmime/scan_result.c2
-rw-r--r--src/libutil/str_util.c6
2 files changed, 6 insertions, 2 deletions
diff --git a/src/libmime/scan_result.c b/src/libmime/scan_result.c
index 7b1acd3e9..23964c88e 100644
--- a/src/libmime/scan_result.c
+++ b/src/libmime/scan_result.c
@@ -529,7 +529,7 @@ rspamd_task_add_result_option (struct rspamd_task *task,
vlen = strlen (val);
- if (!rspamd_fast_utf8_validate (val, vlen)) {
+ if (rspamd_fast_utf8_validate (val, vlen) == 0) {
opt_cpy = rspamd_str_make_utf_valid (val, vlen, &vlen,
task->task_pool);
val = opt_cpy;
diff --git a/src/libutil/str_util.c b/src/libutil/str_util.c
index 9f4ad1cb0..8fcaca484 100644
--- a/src/libutil/str_util.c
+++ b/src/libutil/str_util.c
@@ -3067,7 +3067,11 @@ rspamd_str_make_utf_valid (const guchar *src, gsize slen,
}
if (slen == 0) {
- return NULL;
+ if (dstlen) {
+ *dstlen = 0;
+ }
+
+ return pool ? rspamd_mempool_strdup (pool, "") : g_strdup ("");
}
p = src;