Skip to content

Commit b9616af

Browse files
committed
patch 8.2.1843: Netbeans: with huge buffer number memory allocation may fail
Problem: Netbeans: with huge buffer number memory allocation may fail. Solution: Check for size overflow.
1 parent 21cbe17 commit b9616af

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

src/netbeans.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -674,11 +674,19 @@ nb_get_buf(int bufno)
674674
{
675675
if (bufno >= buf_list_size) // grow list
676676
{
677-
nbbuf_T *t_buf_list = buf_list;
677+
nbbuf_T *t_buf_list = buf_list;
678+
size_t bufsize;
678679

679680
incr = bufno - buf_list_size + 90;
680681
buf_list_size += incr;
681-
buf_list = vim_realloc(buf_list, buf_list_size * sizeof(nbbuf_T));
682+
bufsize = buf_list_size * sizeof(nbbuf_T);
683+
if (bufsize == 0 || bufsize / sizeof(nbbuf_T)
684+
!= (size_t)buf_list_size)
685+
{
686+
// list size overflow, bail out
687+
return NULL;
688+
}
689+
buf_list = vim_realloc(buf_list, bufsize);
682690
if (buf_list == NULL)
683691
{
684692
vim_free(t_buf_list);

src/version.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,8 @@ static char *(features[]) =
750750

751751
static int included_patches[] =
752752
{ /* Add new patch number below this line */
753+
/**/
754+
1843,
753755
/**/
754756
1842,
755757
/**/

0 commit comments

Comments
 (0)