0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 8.2.2640: screenstring() returns non-existing composing characters

Problem:    screenstring() returns non-existing composing characters.
Solution:   Only use composing characters if there is a base character.
This commit is contained in:
Bram Moolenaar
2021-03-22 17:11:15 +01:00
parent 5ea79a2599
commit f1387285e2
3 changed files with 8 additions and 10 deletions

View File

@@ -7902,7 +7902,7 @@ f_screenstring(typval_T *argvars, typval_T *rettv)
c = ScreenLines[off];
buflen += mb_char2bytes(c, buf);
if (enc_utf8)
if (enc_utf8 && ScreenLinesUC[off] != 0)
for (i = 0; i < Screen_mco && ScreenLinesC[i][off] != 0; ++i)
buflen += mb_char2bytes(ScreenLinesC[i][off], buf + buflen);