diff options
| author | jdrouhard <john@drouhard.dev> | 2026-07-04 10:22:34 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-04 11:22:34 -0400 |
| commit | f0559997dd33e87bf7bb10ecc5dffb91d29177f6 (patch) | |
| tree | a47dd20c997327fc1e684edc305285a9592effb2 /runtime/lua/vim/_meta/api_keysets.gen.lua | |
| parent | 29db6ce84c446fd23fb8e5462b5781bceba5f7aa (diff) | |
| download | rneovim-f0559997dd33e87bf7bb10ecc5dffb91d29177f6.tar.gz rneovim-f0559997dd33e87bf7bb10ecc5dffb91d29177f6.tar.bz2 rneovim-f0559997dd33e87bf7bb10ecc5dffb91d29177f6.zip | |
fix(lsp): semantic tokens reset_timer() usage #40554
Problem: reset_timer() was being called without checking for whether the
client state for the client_id still existed. debounce_request() starts
a timer that defers a call to send_request() which then calls
reset_timer(). If the timer fires after the client_state is erased, then
the deferred function attempts to dereference the timer on a nil client
state.
Solution: Change reset_timer to take a state directly so it can't be nil
and move the reset_timer() call inside a guard that ensures state
exists. Additionally, reset a client's timer when the client detaches so
it doesn't become dangling.
Diffstat (limited to 'runtime/lua/vim/_meta/api_keysets.gen.lua')
0 files changed, 0 insertions, 0 deletions