From ad937e4b7e8bb8fc3e780b2e7cd8500ba6069b1f Mon Sep 17 00:00:00 2001 From: Eugene Syromyatnikov Date: Fri, 4 Oct 2019 15:13:40 +0200 Subject: [PATCH] util: avoid double printing of ellipsis in print_array When PAF_ARRAY_TRUNCATED flag is provided to print_array_ex. * util.c (print_array_ex): Add truncated flag, set it when the output is truncated, avoid explicit ellipsis printing when it is set. Fixes: v5.3~14 "Add PAF_ARRAY_TRUNCATED flag for print_array_ex" --- util.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/util.c b/util.c index 8d9e092b..8781bdf4 100644 --- a/util.c +++ b/util.c @@ -1329,6 +1329,7 @@ print_array_ex(struct tcb *const tcp, kernel_ulong_t cur; kernel_ulong_t idx = 0; enum xlat_style xlat_style = flags & XLAT_STYLE_MASK; + bool truncated = false; for (cur = start_addr; cur < end_addr; cur += elem_size, idx++) { if (cur != start_addr) @@ -1341,6 +1342,7 @@ print_array_ex(struct tcb *const tcp, else { tprints("..."); printaddr_comment(cur); + truncated = true; } break; } @@ -1354,6 +1356,7 @@ print_array_ex(struct tcb *const tcp, if (cur >= abbrev_end) { tprints("..."); cur = end_addr; + truncated = true; break; } @@ -1377,7 +1380,7 @@ print_array_ex(struct tcb *const tcp, } if ((cur != start_addr) || !tfetch_mem_func) { - if (flags & PAF_ARRAY_TRUNCATED) { + if ((flags & PAF_ARRAY_TRUNCATED) && !truncated) { if (cur != start_addr) tprints(", "); -- 2.50.1