aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames McCoy <jamessan@jamessan.com>2016-10-12 12:53:44 -0400
committerJames McCoy <jamessan@jamessan.com>2016-10-12 12:53:44 -0400
commit6bc3bcefc6ca907d18bd5c8d3667901a62e1285c (patch)
treed58b3bdd240865385cf2996379690e873be93fd2
parentcb351c678bffa061426075ba6068188ce71c4ae6 (diff)
parent892f55bd20615031132b0ed13b1861be3b645ecc (diff)
downloadrneovim-6bc3bcefc6ca907d18bd5c8d3667901a62e1285c.tar.gz
rneovim-6bc3bcefc6ca907d18bd5c8d3667901a62e1285c.tar.bz2
rneovim-6bc3bcefc6ca907d18bd5c8d3667901a62e1285c.zip
Merge pull request #5461 from jamessan/emoji-ui-regression
ui: Fix the call to utf_ambiguous_width
-rw-r--r--src/nvim/mbyte.c2
-rw-r--r--src/nvim/ui.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/src/nvim/mbyte.c b/src/nvim/mbyte.c
index c08b9e8fcf..e6312f9c00 100644
--- a/src/nvim/mbyte.c
+++ b/src/nvim/mbyte.c
@@ -1724,7 +1724,7 @@ int utf_class(int c)
return 2;
}
-int utf_ambiguous_width(int c)
+bool utf_ambiguous_width(int c)
{
return c >= 0x80 && (intable(ambiguous, ARRAY_SIZE(ambiguous), c)
|| intable(emoji_all, ARRAY_SIZE(emoji_all), c));
diff --git a/src/nvim/ui.c b/src/nvim/ui.c
index 648d633e07..cf5e95f88a 100644
--- a/src/nvim/ui.c
+++ b/src/nvim/ui.c
@@ -397,9 +397,8 @@ static void send_output(uint8_t **ptr)
size_t clen = (size_t)mb_ptr2len(p);
UI_CALL(put, p, (size_t)clen);
col++;
- if (utf_ambiguous_width(*p)) {
+ if (utf_ambiguous_width(utf_ptr2char(p))) {
pending_cursor_update = true;
- flush_cursor_update();
} else if (mb_ptr2cells(p) > 1) {
// double cell character, blank the next cell
UI_CALL(put, NULL, 0);