1
0
forked from aniani/vim

patch 7.4.2223

Problem:    Buffer overflow when using latin1 character with feedkeys().
Solution:   Check for an illegal character.  Add a test.
This commit is contained in:
Bram Moolenaar
2016-08-17 21:32:09 +02:00
parent 6bff02eb53
commit d3c907b5d2
11 changed files with 67 additions and 48 deletions

View File

@@ -11166,7 +11166,7 @@ f_strgetchar(typval_T *argvars, typval_T *rettv)
break;
}
--charidx;
byteidx += mb_cptr2len(str + byteidx);
byteidx += MB_CPTR2LEN(str + byteidx);
}
}
#else
@@ -11326,7 +11326,7 @@ f_strcharpart(typval_T *argvars, typval_T *rettv)
if (nchar > 0)
while (nchar > 0 && nbyte < slen)
{
nbyte += mb_cptr2len(p + nbyte);
nbyte += MB_CPTR2LEN(p + nbyte);
--nchar;
}
else
@@ -11341,7 +11341,7 @@ f_strcharpart(typval_T *argvars, typval_T *rettv)
if (off < 0)
len += 1;
else
len += mb_cptr2len(p + off);
len += MB_CPTR2LEN(p + off);
--charlen;
}
}