forked from aniani/vim
patch 8.2.3582: reading uninitialized memory when giving spell suggestions
Problem: Reading uninitialized memory when giving spell suggestions. Solution: Check that preword is not empty.
This commit is contained in:
@@ -1619,7 +1619,7 @@ suggest_trie_walk(
|
|||||||
// char, e.g., "thes," -> "these".
|
// char, e.g., "thes," -> "these".
|
||||||
p = fword + sp->ts_fidx;
|
p = fword + sp->ts_fidx;
|
||||||
MB_PTR_BACK(fword, p);
|
MB_PTR_BACK(fword, p);
|
||||||
if (!spell_iswordp(p, curwin))
|
if (!spell_iswordp(p, curwin) && *preword != NUL)
|
||||||
{
|
{
|
||||||
p = preword + STRLEN(preword);
|
p = preword + STRLEN(preword);
|
||||||
MB_PTR_BACK(preword, p);
|
MB_PTR_BACK(preword, p);
|
||||||
|
@@ -839,6 +839,14 @@ func Test_spell_screendump()
|
|||||||
call delete('XtestSpell')
|
call delete('XtestSpell')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_spell_single_word()
|
||||||
|
new
|
||||||
|
silent! norm 0R00
|
||||||
|
spell! <20><>
|
||||||
|
silent 0norm 0r$ Dvz=
|
||||||
|
bwipe!
|
||||||
|
endfunc
|
||||||
|
|
||||||
let g:test_data_aff1 = [
|
let g:test_data_aff1 = [
|
||||||
\"SET ISO8859-1",
|
\"SET ISO8859-1",
|
||||||
\"TRY esianrtolcdugmphbyfvkwjkqxz-\xEB\xE9\xE8\xEA\xEF\xEE\xE4\xE0\xE2\xF6\xFC\xFB'ESIANRTOLCDUGMPHBYFVKWJKQXZ",
|
\"TRY esianrtolcdugmphbyfvkwjkqxz-\xEB\xE9\xE8\xEA\xEF\xEE\xE4\xE0\xE2\xF6\xFC\xFB'ESIANRTOLCDUGMPHBYFVKWJKQXZ",
|
||||||
|
@@ -757,6 +757,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
3582,
|
||||||
/**/
|
/**/
|
||||||
3581,
|
3581,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user