summaryrefslogtreecommitdiffstatshomepage
path: root/test/functional/vimscript/executable_spec.lua
diff options
context:
space:
mode:
authorglepnir <glephunter@gmail.com>2026-02-12 12:29:57 +0800
committerglepnir <glephunter@gmail.com>2026-02-17 18:55:39 +0800
commit444c195edb33571cc0b653d4e2ef0fd3519cf0fd (patch)
tree7ef7f2ed7559ad14c0f6473b5fce0a6351161e04 /test/functional/vimscript/executable_spec.lua
parent886efcb8535e77c685f73d62fa9138f59121c241 (diff)
fix(highlight): blend underline check and use struct key for attr cache
Problem: hl_blend_attrs() through-blend path only checked HL_UNDERLINE | HL_UNDERCURL for sp_color blending, missing underdotted, combine/blend attr cache used (a << 16) + b as map key which could overflow if attr IDs ever exceed 16 bits. Solution: Use HL_UNDERLINE_MASK in the through-blend path to match all underline styles. Use uint64_t with (a << 32) | b as map key via HlAttrKey macro so each attr ID gets its full 32-bit range. Use HLATTRS_INIT in hl_get_underline() to avoid duplicating default field values.
Diffstat (limited to 'test/functional/vimscript/executable_spec.lua')
0 files changed, 0 insertions, 0 deletions