diff --git a/src/MacVim/gui_macvim.m b/src/MacVim/gui_macvim.m index 6fd9804838..a54d35e0eb 100644 --- a/src/MacVim/gui_macvim.m +++ b/src/MacVim/gui_macvim.m @@ -323,8 +323,10 @@ // wide and vice versa. for (i = 0; i < len; i += cl) { c = utf_ptr2char(s + i); - cl = utf_ptr2len(s + i); cn = utf_char2cells(c); + cl = utf_ptr2len(s + i); + if (0 == cl) + len = i; // len must be wrong (shouldn't happen) if (!utf_iscomposing(c)) { if ((cn > 1 && !wide) || (cn <= 1 && wide)) {