Skip to content

Commit

Permalink
patch 9.0.0172: trying to allocate zero bytes
Browse files Browse the repository at this point in the history
Problem:    Trying to allocate zero bytes.
Solution:   Do not allocate the proptype array when there are none.
            (closes #10867)
  • Loading branch information
brammool committed Aug 8, 2022
1 parent 6e5c611 commit 1024690
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 1 deletion.
12 changes: 12 additions & 0 deletions src/testdir/test_textprop.vim
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,18 @@ func Test_proptype_buf()
call assert_fails("call prop_type_add('one', {'bufnr': 98764})", "E158:")
endfunc

def Test_proptype_add_remove()
# add and remove a prop type so that the array is empty
prop_type_add('local', {bufnr: bufnr('%')})
prop_type_delete('local', {bufnr: bufnr('%')})
prop_type_add('global', {highlight: 'ErrorMsg'})
prop_add(1, 1, {length: 1, type: 'global'})
redraw

prop_clear(1)
prop_type_delete('global')
enddef

def Test_proptype_buf_list()
new
var bufnr = bufnr('')
Expand Down
2 changes: 1 addition & 1 deletion src/textprop.c
Original file line number Diff line number Diff line change
Expand Up @@ -736,7 +736,7 @@ find_type_by_id(hashtab_T *ht, proptype_T ***array, int id)
int low = 0;
int high;

if (ht == NULL)
if (ht == NULL || ht->ht_used == 0)
return NULL;

// Make the loopup faster by creating an array with pointers to
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Original file line number Diff line number Diff line change
Expand Up @@ -735,6 +735,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
172,
/**/
171,
/**/
Expand Down

0 comments on commit 1024690

Please sign in to comment.