diff options
author | luukvbaal <31730729+luukvbaal@users.noreply.github.com> | 2023-01-17 00:31:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-17 07:31:36 +0800 |
commit | da3460562e84dcf608248cc9a5b0eb2341531a0d (patch) | |
tree | a9e07e0448db990eba18c4bf7d895491551b4685 /src | |
parent | 9ccc6de8d3ebfec0aebdc6dabdb23dd43f102331 (diff) | |
download | rneovim-da3460562e84dcf608248cc9a5b0eb2341531a0d.tar.gz rneovim-da3460562e84dcf608248cc9a5b0eb2341531a0d.tar.bz2 rneovim-da3460562e84dcf608248cc9a5b0eb2341531a0d.zip |
fix(api): avoid memory leak with click functions in nvim_eval_statusline() (#21845)
Problem: Allocated click function memory is lost due to
`nvim_eval_statusline()` not passing in a `StlClickRecord`.
Solution: Do not allocate click function memory if `tabtab == NULL`.
Resolve #21764, supersede #21842.
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/statusline.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nvim/statusline.c b/src/nvim/statusline.c index cb5dde1013..3171ee1605 100644 --- a/src/nvim/statusline.c +++ b/src/nvim/statusline.c @@ -1323,7 +1323,7 @@ int build_stl_str_hl(win_T *wp, char *out, size_t outlen, char *fmt, char *opt_n } stl_items[curitem].type = ClickFunc; stl_items[curitem].start = out_p; - stl_items[curitem].cmd = xmemdupz(t, (size_t)(fmt_p - t)); + stl_items[curitem].cmd = tabtab ? xmemdupz(t, (size_t)(fmt_p - t)) : NULL; stl_items[curitem].minwid = minwid; fmt_p++; curitem++; |