]> source.dussan.org Git - rspamd.git/commitdiff
Arrays are no longer lists in UCL.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 25 Dec 2014 18:24:54 +0000 (18:24 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 25 Dec 2014 18:24:54 +0000 (18:24 +0000)
contrib/snowball
src/libserver/cfg_rcl.c

index 4bc9f365c4b674d0dd0cfd14c314a866f00e0883..558c36912b3ca63e2917d7df504a92dbc78e1b75 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 4bc9f365c4b674d0dd0cfd14c314a866f00e0883
+Subproject commit 558c36912b3ca63e2917d7df504a92dbc78e1b75
index 8bc01f8171b60721738d723e2fbc664d9771d087..04726fbdae8d3681709a57d090cad21f7262a334 100644 (file)
@@ -585,11 +585,8 @@ rspamd_rcl_worker_handler (struct rspamd_config *cfg, const ucl_object_t *obj,
 
        val = ucl_object_find_key (obj, "bind_socket");
        if (val != NULL) {
-               if (val->type == UCL_ARRAY) {
-                       val = val->value.ov;
-               }
-               LL_FOREACH (val, cur)
-               {
+               it = NULL;
+               while ((cur = ucl_iterate_object (val, &it, TRUE)) != NULL) {
                        if (!ucl_object_tostring_safe (cur, &worker_bind)) {
                                continue;
                        }
@@ -613,6 +610,7 @@ rspamd_rcl_worker_handler (struct rspamd_config *cfg, const ucl_object_t *obj,
        /* Parse other attributes */
        HASH_FIND_INT (cfg->wrk_parsers, (gint *)&qtype, wparser);
        if (wparser != NULL && obj->type == UCL_OBJECT) {
+               it = NULL;
                while ((cur = ucl_iterate_object (obj, &it, true)) != NULL) {
                        HASH_FIND_STR (wparser->parsers, ucl_object_key (cur), whandler);
                        if (whandler != NULL) {