summaryrefslogtreecommitdiffstats
path: root/src/libserver/task.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-12-05 16:17:29 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-12-05 16:17:29 +0000
commitc2452e00c3243ac461428e62df60a35ef7adb966 (patch)
tree0e3901a9899a305217acc4b76ed2cd24c2ca6ba0 /src/libserver/task.c
parent337d5d63c0c04e6524f0900026b7a0b4bca74386 (diff)
downloadrspamd-c2452e00c3243ac461428e62df60a35ef7adb966.tar.gz
rspamd-c2452e00c3243ac461428e62df60a35ef7adb966.zip
[Minor] Check if there are options in a symbol
Diffstat (limited to 'src/libserver/task.c')
-rw-r--r--src/libserver/task.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/libserver/task.c b/src/libserver/task.c
index 51d4da1e5..42f5e305e 100644
--- a/src/libserver/task.c
+++ b/src/libserver/task.c
@@ -1047,19 +1047,23 @@ rspamd_task_log_metric_res (struct rspamd_task *task,
gpointer k, v;
rspamd_printf_fstring (&symbuf, "{");
- j = 0;
- g_hash_table_iter_init (&it, sym->options);
- while (g_hash_table_iter_next (&it, &k, &v)) {
- const char *opt = v;
+ if (sym->options) {
+ j = 0;
+ g_hash_table_iter_init (&it, sym->options);
- rspamd_printf_fstring (&symbuf, "%s;", opt);
+ while (g_hash_table_iter_next (&it, &k, &v)) {
+ const char *opt = v;
- if (j >= max_log_elts) {
- rspamd_printf_fstring (&symbuf, "...;");
- break;
+ rspamd_printf_fstring (&symbuf, "%s;", opt);
+
+ if (j >= max_log_elts) {
+ rspamd_printf_fstring (&symbuf, "...;");
+ break;
+ }
+
+ j ++;
}
- j ++;
}
rspamd_printf_fstring (&symbuf, "}");