mirror of
https://github.com/vim/vim
synced 2025-07-16 01:01:58 +00:00
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".
|
||||
p = fword + sp->ts_fidx;
|
||||
MB_PTR_BACK(fword, p);
|
||||
if (!spell_iswordp(p, curwin))
|
||||
if (!spell_iswordp(p, curwin) && *preword != NUL)
|
||||
{
|
||||
p = preword + STRLEN(preword);
|
||||
MB_PTR_BACK(preword, p);
|
||||
|
@ -839,6 +839,14 @@ func Test_spell_screendump()
|
||||
call delete('XtestSpell')
|
||||
endfunc
|
||||
|
||||
func Test_spell_single_word()
|
||||
new
|
||||
silent! norm 0R00
|
||||
spell! <20><>
|
||||
silent 0norm 0r$ Dvz=
|
||||
bwipe!
|
||||
endfunc
|
||||
|
||||
let g:test_data_aff1 = [
|
||||
\"SET ISO8859-1",
|
||||
\"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[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
3582,
|
||||
/**/
|
||||
3581,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user