fix json fp precision, fix multi value json compound tags

This commit is contained in:
Freya Murphy 2023-12-15 23:31:50 -05:00
parent afda43984e
commit 8a4f45db71
No known key found for this signature in database
GPG key ID: 988032A5638EE799
2 changed files with 7 additions and 2 deletions

View file

@ -124,10 +124,10 @@ static bool json_print_data(const tag_t *tag, const stream_t *stream, int depth)
ok = printi(stream, 0, "%ld", tag->data.l);
break;
case TAG_FLOAT:
ok = printi(stream, 0, "%f", tag->data.f);
ok = printi(stream, 0, "%.9g", tag->data.f);
break;
case TAG_DOUBLE:
ok = printi(stream, 0, "%lf", tag->data.d);
ok = printi(stream, 0, "%.17g", tag->data.d);
break;
case TAG_BYTE_ARRAY:
ok = json_print_byte_array(&tag->data, stream);

View file

@ -562,6 +562,11 @@ static bool json_read_compound(tagdata_t *data, const stream_t *stream) {
}
if (next.type == TOK_COMMA) {
if (json_next_token(&next, stream) == false) {
free(tags);
free(name);
return false;
}
continue;
} else if (next.type == TOK_RBRACE) {
break;