diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-02-01 18:07:09 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-01 18:07:09 +0800 |
commit | 01d3a64e284749ac1ae40b0caf7165155063fc4f (patch) | |
tree | b8a0be55fe150d73a6a712d784c000ce19402396 /src/nvim/getchar.c | |
parent | d63ad600e0571ccf07eed1e841e8519da7d4af9f (diff) | |
download | rneovim-01d3a64e284749ac1ae40b0caf7165155063fc4f.tar.gz rneovim-01d3a64e284749ac1ae40b0caf7165155063fc4f.tar.bz2 rneovim-01d3a64e284749ac1ae40b0caf7165155063fc4f.zip |
vim-patch:8.1.1827: allocating more memory than needed for extended structs (#22081)
Problem: Allocating more memory than needed for extended structs.
Solution: Use offsetof() instead of sizeof(). (Dominique Pelle,
closes vim/vim#4786)
https://github.com/vim/vim/commit/47ed553fd5bebfc36eb8aa81686eeaa5a84eccac
Diffstat (limited to 'src/nvim/getchar.c')
-rw-r--r-- | src/nvim/getchar.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c index 51554fea22..8ed9381bca 100644 --- a/src/nvim/getchar.c +++ b/src/nvim/getchar.c @@ -252,7 +252,7 @@ static void add_buff(buffheader_T *const buf, const char *const s, ptrdiff_t sle } else { len = (size_t)slen; } - buffblock_T *p = xmalloc(sizeof(buffblock_T) + len); + buffblock_T *p = xmalloc(offsetof(buffblock_T, b_str) + len + 1); buf->bh_space = len - (size_t)slen; xstrlcpy(p->b_str, s, (size_t)slen + 1); |