aboutsummaryrefslogtreecommitdiff
path: root/runtime/indent/javascriptreact.vim
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2026-05-04 07:20:16 +0800
committerGitHub <noreply@github.com>2026-05-04 07:20:16 +0800
commit0e69a380263f5a78d11cd05c65cc224a3c74b53e (patch)
tree4f8d56e7ec2f1fefa45afbd6589a7e97d2f5196d /runtime/indent/javascriptreact.vim
parent7ed5609439ba83d75e972beb859245d998df09ea (diff)
downloadrneovim-0e69a380263f5a78d11cd05c65cc224a3c74b53e.tar.gz
rneovim-0e69a380263f5a78d11cd05c65cc224a3c74b53e.tar.bz2
rneovim-0e69a380263f5a78d11cd05c65cc224a3c74b53e.zip
vim-patch:9.2.0436: Buffer overflow when parsing overlong errorformat lines (#39578)
Problem: When an error line in a file passed to :cfile / :cgetfile is longer than IOSIZE, qf_parse_file_pfx() copies the tail into the fixed-size IObuff with STRMOVE(), overflowing the heap buffer. The same code path can also loop indefinitely because qf_parse_file_pfx() always returns QF_MULTISCAN when a tail is present, and qf_init_ext() unconditionally goes to "restofline" without bounding the tail length (Nabih). Solution: Remove the STRMOVE() into IObuff. In the QF_MULTISCAN branch, alias linebuf into the tail directly and update linelen, requiring strict progress (new length less than the previous length) before retrying; otherwise ignore the line. closes: vim/vim#20126 Supported by AI https://github.com/vim/vim/commit/77677c33dec485aadd371da75cce55d449b51798 Co-authored-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'runtime/indent/javascriptreact.vim')
0 files changed, 0 insertions, 0 deletions