about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2024-02-08 23:42:11 +0100
committerbptato <nincsnevem662@gmail.com>2024-02-08 23:44:40 +0100
commit431fd101705146f2d4baaa1a4a139adf356188ab (patch)
tree002fdfecce7eab209f76a36467023bc0f761b125 /src
parenta37af56817baa9c6fa1d0ecb6c1800222cf086bb (diff)
downloadchawan-431fd101705146f2d4baaa1a4a139adf356188ab.tar.gz
buffer: fix index defect in updateHover
Caused by a race condition when updateHover is executed after
buffer.lines.len changed in buffer but before the change has been
reported to container.
Diffstat (limited to 'src')
-rw-r--r--src/server/buffer.nim3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/buffer.nim b/src/server/buffer.nim
index cbefc5a2..e5cdf50d 100644
--- a/src/server/buffer.nim
+++ b/src/server/buffer.nim
@@ -661,7 +661,8 @@ type UpdateHoverResult* = object
   repaint*: bool
 
 proc updateHover*(buffer: Buffer, cursorx, cursory: int): UpdateHoverResult {.proxy.} =
-  if buffer.lines.len == 0: return
+  if cursory >= buffer.lines.len:
+    return
   var thisnode: StyledNode
   let i = buffer.lines[cursory].findFormatN(cursorx) - 1
   if i >= 0:
ws deploy run `koch winrelease`.' href='/ahoang/Nim/commit/.gitlab-ci.yml?h=devel&id=c86d1a479c8bea2c510b77a254d5819e970a8f93'>c86d1a479 ^
3e87ef35f ^

cf40f3240 ^
e60868a78 ^
3e87ef35f ^




b790159bb ^
7e3ebc1bc ^





ef44c12a3 ^
97738a4f2 ^
7e3ebc1bc ^

3e87ef35f ^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60