diff options
author | Dario Lombardo <lomato@gmail.com> | 2018-12-10 13:42:17 +0100 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2018-12-10 19:58:25 +0000 |
commit | 3f01aaac49ee5701af3c053aabdfb7f592401055 (patch) | |
tree | cfd7198cda46e9455e2fccd214652c23b586079a /wsutil/json_dumper.c | |
parent | 3f09bf685ff657bacdc8a69b7ef3fec75ccc534b (diff) |
json_dumper: add support to convert dots in underscores.
This is needed for ek json compatibility.
Change-Id: I75c74a1dc7996f3f4c17071508655ae6e3c6b94c
Reviewed-on: https://code.wireshark.org/review/30993
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Diffstat (limited to 'wsutil/json_dumper.c')
-rw-r--r-- | wsutil/json_dumper.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/wsutil/json_dumper.c b/wsutil/json_dumper.c index 7ae9a0674a..6a0568ce7e 100644 --- a/wsutil/json_dumper.c +++ b/wsutil/json_dumper.c @@ -37,7 +37,7 @@ enum json_dumper_change { }; static void -json_puts_string(FILE *fp, const char *str) +json_puts_string(FILE *fp, const char *str, gboolean dot_to_underscore) { if (!str) { fputs("null", fp); @@ -58,7 +58,10 @@ json_puts_string(FILE *fp, const char *str) if (str[i] == '\\' || str[i] == '"') { fputc('\\', fp); } - fputc(str[i], fp); + if (dot_to_underscore && str[i] == '.') + fputc('_', fp); + else + fputc(str[i], fp); } } fputc('"', fp); @@ -200,7 +203,7 @@ json_dumper_set_member_name(json_dumper *dumper, const char *name) } prepare_token(dumper); - json_puts_string(dumper->output_file, name); + json_puts_string(dumper->output_file, name, dumper->flags & JSON_DUMPER_DOT_TO_UNDERSCORE); fputc(':', dumper->output_file); if ((dumper->flags & JSON_DUMPER_FLAGS_PRETTY_PRINT)) { fputc(' ', dumper->output_file); @@ -256,7 +259,7 @@ json_dumper_value_string(json_dumper *dumper, const char *value) } prepare_token(dumper); - json_puts_string(dumper->output_file, value); + json_puts_string(dumper->output_file, value, FALSE); dumper->state[dumper->current_depth] = JSON_DUMPER_TYPE_VALUE; } |