diff options
| author | altermo <107814000+altermo@users.noreply.github.com> | 2026-04-16 19:52:20 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-16 13:52:20 -0400 |
| commit | bb2284d75e7e2b0587610d1ae4d681d185622645 (patch) | |
| tree | dddf6555df0b8f58f4767ab88d5df9c5ea0ed75d /test/functional/vimscript/executable_spec.lua | |
| parent | bc6d946cca422c770e792a62d7454387d79065e2 (diff) | |
fix(treesitter): TSNode:id() with NUL byte causes unreliable select() #39134
Problem:
`TSNode:id()` returns the underlying c pointer as a string, which may include
NUL bytes. In PUC Lua, `('%s'):format('\0a\0')` returns `''` and not `'\0a\0'`
(i.e. treats the string as a c-string (which terminates at the NUL byte)).
This resulted in two different nodes being able to have the same id.
Solution:
Use concatenation `..` instead of `string.format()`.
Diffstat (limited to 'test/functional/vimscript/executable_spec.lua')
0 files changed, 0 insertions, 0 deletions
