]> source.dussan.org Git - rspamd.git/commitdiff
Update from libucl.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 26 Oct 2013 21:40:03 +0000 (22:40 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 26 Oct 2013 21:40:03 +0000 (22:40 +0100)
src/ucl/include/ucl.h
src/ucl/src/ucl_emitter.c
src/ucl/utils/chargen.c
src/ucl/utils/objdump.c

index 0f132a37545f7ed8e5a0f87aa9b91ac05637d988..fe56a04daf58912535ad6d7b9a791b108cc495aa 100644 (file)
@@ -31,8 +31,8 @@
 #include <stdbool.h>
 #include <stdarg.h>
 #include <stdio.h>
-#include "config.h"
 
+#include "config.h"
 #include "uthash.h"
 #include "utlist.h"
 
index 38d4b3d18b312cccc4210899d8059577c91ab7e4..1cf7f27989cde44b987afaa92c10fcccc04f5e31 100644 (file)
@@ -486,7 +486,7 @@ ucl_elt_obj_write_yaml (ucl_object_t *obj, UT_string *buf, unsigned int tabs, bo
 
        HASH_ITER (hh, obj, cur, tmp) {
                ucl_add_tabs (buf, tabs + 1, is_top);
-               if (obj->flags & UCL_OBJECT_NEED_KEY_ESCAPE) {
+               if (cur->flags & UCL_OBJECT_NEED_KEY_ESCAPE) {
                        ucl_elt_string_write_json (cur->hh.key, cur->hh.keylen, buf);
                }
                else {
index 724b378999ab4aa2e3d5737020571dca666e7fd2..d6fa86a20bd2ac3334e6af68c2f0ec203f48d9e3 100644 (file)
@@ -98,6 +98,10 @@ main (int argc, char **argv)
                                i == '"' || i == '\f') {
                        r += print_flag ("UCL_CHARACTER_JSON_UNSAFE", &need_or, valbuf + r);
                }
+               if (i == '\n' || i == '\r' || i == '\\' || i == '\b' || i == '\t' ||
+                               i == '"' || i == '\f' || i == '=' || i == ':' || i == '{' || i == '[' || i == ' ') {
+                       r += print_flag ("UCL_CHARACTER_UCL_UNSAFE", &need_or, valbuf + r);
+               }
 
                if (!need_or) {
                        r += print_flag ("UCL_CHARACTER_DENIED", &need_or, valbuf + r);
index 985106a09afa40d700547dfd4b27c19861a33d7b..8ba0ac261ff8fbf25c86a429b81a825959c72454 100644 (file)
@@ -95,7 +95,6 @@ main(int argc, char **argv)
        const char *fn = NULL;
        char inbuf[8192];
        struct ucl_parser *parser;
-       UT_string *err = NULL;
        int k, ret = 0;
        ucl_object_t *obj = NULL;
        ucl_object_t *par;
@@ -118,18 +117,18 @@ main(int argc, char **argv)
        parser = ucl_parser_new (0);
        while (!feof (in)) {
                fread (inbuf, sizeof (inbuf), 1, in);
-               ucl_parser_add_chunk (parser, inbuf, strlen (inbuf), &err);
+               ucl_parser_add_chunk (parser, inbuf, strlen (inbuf));
        }
        fclose (in);
-       if (err != NULL ) {
-               printf ("Error occured: %s\n", err->d);
+       if (ucl_parser_get_error(parser) ) {
+               printf ("Error occured: %s\n", ucl_parser_get_error(parser));
                ret = 1;
                goto end;
        }
 
-       obj = ucl_parser_get_object (parser, &err);
-       if (err != NULL ) {
-               printf ("Error occured: %s\n", err->d);
+       obj = ucl_parser_get_object (parser);
+       if (ucl_parser_get_error(parser)) {
+               printf ("Error occured: %s\n", ucl_parser_get_error(parser));
                ret = 1;
                goto end;
        }