summaryrefslogtreecommitdiffstatshomepage
path: root/runtime/lua/vim/_core/stringbuffer.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2025-12-24 08:45:02 +0800
committerzeertzjq <zeertzjq@outlook.com>2025-12-24 08:45:05 +0800
commit081feae3a31f2165322d03eb4842a0f0dec90aec (patch)
tree535e6b4639afedefbd74c342f5f660b772f5e569 /runtime/lua/vim/_core/stringbuffer.lua
parentdfcf03b1baf801460a35f40168889de67822f81f (diff)
vim-patch:aded554: runtime(make): Move target greedy match after $() to avoid region matching overflow
Partially revert 2a33b499a3d7f46dc307234847a6562cef6cf1d8, where all syn match makeIdent are moved before syn region makeIdent to match $() (reason: see https://github.com/vim/vim/pull/18403#issuecomment-3341161566) However this results in https://github.com/vim/vim/issues/18890 , because lines like `$(a) =` will first start a region search beginning with `$(` but then the whole target including `)` will be matched by `syn match makeIdent "^ *[^:#= \t]*\s*="me=e-1` which leaves the region search for the never-found `)` and let the region matching overflow. Same for `$(a) ::` `$(a) +=` The solution is to move those greedy target match back, so they take priority and prevents region match from happening. fixes: vim/vim#18890 closes: vim/vim#18938 https://github.com/vim/vim/commit/aded55463a150bc9c77852f8e2c931535bedad3e Co-authored-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
Diffstat (limited to 'runtime/lua/vim/_core/stringbuffer.lua')
0 files changed, 0 insertions, 0 deletions