1
0
forked from aniani/vim

patch 8.0.1225: no check for spell region being zero

Problem:    No check for spell region being zero. (geeknik)
Solution:   Check for zero. (closes #2252)
This commit is contained in:
Bram Moolenaar 2017-10-27 00:57:05 +02:00
parent cf1ba35fc2
commit ee03b94124
3 changed files with 12 additions and 1 deletions

View File

@ -4277,7 +4277,7 @@ spell_read_wordfile(spellinfo_T *spin, char_u *fname)
flags |= WF_REGION;
l = *p - '0';
if (l > spin->si_region_count)
if (l == 0 || l > spin->si_region_count)
{
smsg((char_u *)_("Invalid region nr in %s line %d: %s"),
fname, lnum, p);

View File

@ -271,6 +271,15 @@ func Test_zz_sal_and_addition()
call assert_equal("elekwint", SecondSpellWord())
endfunc
func Test_region_error()
messages clear
call writefile(["/regions=usgbnz", "elequint/0"], "Xtest.latin1.add")
mkspell! Xtest.latin1.add.spl Xtest.latin1.add
call assert_match('Invalid region nr in Xtest.latin1.add line 2: 0', execute('messages'))
call delete('Xtest.latin1.add')
call delete('Xtest.latin1.add.spl')
endfunc
" Check using z= in new buffer (crash fixed by patch 7.4a.028).
func Test_zeq_crash()
new

View File

@ -761,6 +761,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1225,
/**/
1224,
/**/