diff options
author | rcombs <rcombs@rcombs.me> | 2022-12-15 19:16:57 -0600 |
---|---|---|
committer | rcombs <rcombs@rcombs.me> | 2023-01-28 14:20:20 -0600 |
commit | fa7202d9f2f1afb207bfa5e39cec935896b72d6b (patch) | |
tree | 5f8af08724b33cb96c953e2374b43514ab68d95b /misc | |
parent | 91ba71b09f5b0ee6ea612285d30c51ad053c1ff3 (diff) | |
download | mpv-fa7202d9f2f1afb207bfa5e39cec935896b72d6b.tar.bz2 mpv-fa7202d9f2f1afb207bfa5e39cec935896b72d6b.tar.xz |
misc/json: don't wrap top-level pretty strings/infs in quotes
This makes pretty-printing nodes substantially more friendly.
Diffstat (limited to 'misc')
-rw-r--r-- | misc/json.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/misc/json.c b/misc/json.c index d25e0f55c8..608cfad861 100644 --- a/misc/json.c +++ b/misc/json.c @@ -300,12 +300,15 @@ static int json_append(bstr *b, const struct mpv_node *src, int indent) bstr_xappend_asprintf(NULL, b, "%"PRId64, src->u.int64); return 0; case MPV_FORMAT_DOUBLE: { - const char *px = isfinite(src->u.double_) ? "" : "\""; + const char *px = (isfinite(src->u.double_) || indent == 0) ? "" : "\""; bstr_xappend_asprintf(NULL, b, "%s%f%s", px, src->u.double_, px); return 0; } case MPV_FORMAT_STRING: - write_json_str(b, src->u.string); + if (indent == 0) + APPEND(b, src->u.string); + else + write_json_str(b, src->u.string); return 0; case MPV_FORMAT_NODE_ARRAY: case MPV_FORMAT_NODE_MAP: { |