From bf88c73c20ff1642aa2566ae67df18ca5b4b63ab Mon Sep 17 00:00:00 2001 From: rain1 Date: Thu, 1 Mar 2018 19:16:11 +0000 Subject: src/main.c: fix issue #1587 by using jv_dumpf in the raw-output and ascii-output case. retain fwrite in the raw-output case. --- src/main.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index be436dd8..b154689e 100644 --- a/src/main.c +++ b/src/main.c @@ -167,7 +167,11 @@ static int process(jq_state *jq, jv value, int flags, int dumpopts) { jv result; while (jv_is_valid(result = jq_next(jq))) { if ((options & RAW_OUTPUT) && jv_get_kind(result) == JV_KIND_STRING) { - fwrite(jv_string_value(result), 1, jv_string_length_bytes(jv_copy(result)), stdout); + if (options & ASCII_OUTPUT) { + jv_dumpf(result, stdout, JV_PRINT_ASCII); + } else { + fwrite(jv_string_value(result), 1, jv_string_length_bytes(jv_copy(result)), stdout); + } ret = 0; jv_free(result); } else { -- cgit v1.2.3