patch 9.1.0666: assert_equal() doesn't show multibyte string correctly
Problem: assert_equal() doesn't show multibyte string correctly
Solution: Properly advance over a multibyte char.
(zeertzjq)
closes: #15456
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/testing.c b/src/testing.c
index 18b8e78..7ab109c 100644
--- a/src/testing.c
+++ b/src/testing.c
@@ -99,7 +99,7 @@
return;
}
- for (p = str; *p != NUL; ++p)
+ for (p = str; *p != NUL; )
{
same_len = 1;
s = p;
@@ -118,10 +118,13 @@
vim_snprintf((char *)buf, NUMBUFLEN, "%d", same_len);
ga_concat(gap, buf);
ga_concat(gap, (char_u *)" times]");
- p = s - 1;
+ p = s;
}
else
+ {
ga_concat_esc(gap, p, clen);
+ p += clen;
+ }
}
}