diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-08-26 22:36:41 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-08-26 22:36:41 +0100 |
commit | 5ff595d9db2d9a33aa10cc9f18f256826226862f (patch) | |
tree | 1abcab2fb32d1084c7d0667490679d5c5941a04b /src/syntax.c | |
parent | af9a6002e0761012cb7108cbfa179a880d3cb49b (diff) | |
download | vim-git-5ff595d9db2d9a33aa10cc9f18f256826226862f.tar.gz |
patch 9.0.0284: using static buffer for multiple completion functionsv9.0.0284
Problem: Using static buffer for multiple completion functions.
Solution: Use one buffer in expand_T.
Diffstat (limited to 'src/syntax.c')
-rw-r--r-- | src/syntax.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/syntax.c b/src/syntax.c index 1fc205414..c68e001be 100644 --- a/src/syntax.c +++ b/src/syntax.c @@ -6420,11 +6420,8 @@ set_context_in_syntax_cmd(expand_T *xp, char_u *arg) * expansion. */ char_u * -get_syntax_name(expand_T *xp UNUSED, int idx) +get_syntax_name(expand_T *xp, int idx) { -#define CBUFFER_LEN 256 - static char_u cbuffer[CBUFFER_LEN]; // TODO: better solution - switch (expand_what) { case EXP_SUBCMD: @@ -6452,9 +6449,9 @@ get_syntax_name(expand_T *xp UNUSED, int idx) { if (idx < curwin->w_s->b_syn_clusters.ga_len) { - vim_snprintf((char *)cbuffer, CBUFFER_LEN, "@%s", + vim_snprintf((char *)xp->xp_buf, EXPAND_BUF_LEN, "@%s", SYN_CLSTR(curwin->w_s)[idx].scl_name); - return cbuffer; + return xp->xp_buf; } else return NULL; |