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 /test/functional/api/vim_spec.lua | |
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 'test/functional/api/vim_spec.lua')
-rw-r--r-- | test/functional/api/vim_spec.lua | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua index 68003e918b..d1314216e2 100644 --- a/test/functional/api/vim_spec.lua +++ b/test/functional/api/vim_spec.lua @@ -3211,6 +3211,17 @@ describe('API', function() 'TextWithNoHighlight%#WarningMsg#TextWithWarningHighlight', { use_winbar = true, highlights = true })) end) + it('no memory leak with click functions', function() + meths.eval_statusline('%@ClickFunc@StatusLineStringWithClickFunc%T', {}) + eq({ + str = 'StatusLineStringWithClickFunc', + width = 29 + }, + meths.eval_statusline( + '%@ClickFunc@StatusLineStringWithClickFunc%T', + {}) + ) + end) end) end) describe('nvim_parse_cmd', function() |