0
0
mirror of https://github.com/vim/vim.git synced 2025-09-26 04:04:07 -04:00

patch 7.4.1136

Problem:    Wrong argument to assert_exception() causes a crash. (reported by
            Coverity)
Solution:   Check for NULL pointer.  Add a test.
This commit is contained in:
Bram Moolenaar
2016-01-19 14:31:20 +01:00
parent 301417041b
commit da5dcd9366
3 changed files with 23 additions and 1 deletions

View File

@@ -9278,7 +9278,8 @@ f_assert_exception(argvars, rettv)
assert_error(&ga);
ga_clear(&ga);
}
else if (strstr((char *)vimvars[VV_EXCEPTION].vv_str, error) == NULL)
else if (error != NULL
&& strstr((char *)vimvars[VV_EXCEPTION].vv_str, error) == NULL)
{
prepare_assert_error(&ga);
fill_assert_error(&ga, &argvars[1], NULL, &argvars[0],

View File

@@ -18,6 +18,25 @@ func Test_assert_equal()
call assert_equal([1, 2, 3], l)
endfunc
func Test_assert_exception()
try
nocommand
catch
call assert_exception('E492:')
endtry
try
nocommand
catch
try
" illegal argument, get NULL for error
call assert_exception([])
catch
call assert_exception('E730:')
endtry
endtry
endfunc
func Test_user_is_happy()
smile
sleep 300m

View File

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