vim-patch:8.1.1895: using NULL pointer when out of memory

Problem:    Using NULL pointer when out of memory.
Solution:   Bail out or skip the code using the pointer. (Zu-Ming Jiang,
            closes vim/vim#4805, closes vim/vim#4843, closes vim/vim#4939, closes vim/vim#4844)
6f10c70b59
This commit is contained in:
Jan Edmund Lazo
2020-05-31 16:17:45 -04:00
parent 64a2884d4c
commit 310a56d0a0
2 changed files with 10 additions and 5 deletions

View File

@@ -7444,6 +7444,8 @@ static int syn_add_group(char_u *name)
return 0;
}
char_u *const name_up = vim_strsave_up(name);
// Append another syntax_highlight entry.
struct hl_group* hlgp = GA_APPEND_VIA_PTR(struct hl_group, &highlight_ga);
memset(hlgp, 0, sizeof(*hlgp));
@@ -7452,7 +7454,7 @@ static int syn_add_group(char_u *name)
hlgp->sg_rgb_fg = -1;
hlgp->sg_rgb_sp = -1;
hlgp->sg_blend = -1;
hlgp->sg_name_u = vim_strsave_up(name);
hlgp->sg_name_u = name_up;
return highlight_ga.ga_len; /* ID is index plus one */
}