summaryrefslogtreecommitdiffstats
path: root/src/tag.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-02-18 18:53:08 +0100
committerChristian Brabandt <cb@256bit.org>2024-02-18 18:57:07 +0100
commitc86bff1771ed9c340f8f4433ae5530fd6de97980 (patch)
treee36a2fc5b221480d2b7a0266298159c2232d855e /src/tag.c
parent026b17404aa3b6e01c4ee5f14a174f33c53f4401 (diff)
patch 9.1.0115: Using freed memory with full tag stack and user datav9.1.0115
Problem: Using freed memory with full tag stack and user data (Konstantin Khlebnikov) Solution: Clear the user data pointer of the newest entry. (zeertzjq, Konstantin Khlebnikov) fixes: neovim/neovim#27498 closes: #14053 Co-authored-by: Konstantin Khlebnikov koct9i@gmail.com Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Konstantin Khlebnikov koct9i@gmail.com Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/tag.c')
-rw-r--r--src/tag.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/tag.c b/src/tag.c
index 893415f699..3df767d192 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -395,7 +395,7 @@ do_tag(
tagstack_clear_entry(&tagstack[0]);
for (i = 1; i < tagstacklen; ++i)
tagstack[i - 1] = tagstack[i];
- --tagstackidx;
+ tagstack[--tagstackidx].user_data = NULL;
}
/*