aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYuan Fu2024-07-21 16:50:59 -0700
committerYuan Fu2024-07-21 17:14:08 -0700
commited38fcc01703d166d8a63989f8167b50ebd954a0 (patch)
treeae126893e95af193a912dd711fb9034cbdff2ccb /src
parentc66bda1a19afd7d8391765e2ed207e44107d8a50 (diff)
downloademacs-ed38fcc01703d166d8a63989f8167b50ebd954a0.tar.gz
emacs-ed38fcc01703d166d8a63989f8167b50ebd954a0.zip
Fix segfault when deleting tree-sitter query (bug#72238)
* src/treesit.c (treesit_delete_query): Only delete query and cursor when they are non-NULL.
Diffstat (limited to 'src')
-rw-r--r--src/treesit.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/treesit.c b/src/treesit.c
index 3ae55d77a91..416c1edf791 100644
--- a/src/treesit.c
+++ b/src/treesit.c
@@ -1224,8 +1224,10 @@ treesit_delete_parser (struct Lisp_TS_Parser *lisp_parser)
1224void 1224void
1225treesit_delete_query (struct Lisp_TS_Query *lisp_query) 1225treesit_delete_query (struct Lisp_TS_Query *lisp_query)
1226{ 1226{
1227 ts_query_delete (lisp_query->query); 1227 if (lisp_query->query)
1228 ts_query_cursor_delete (lisp_query->cursor); 1228 ts_query_delete (lisp_query->query);
1229 if (lisp_query->cursor)
1230 ts_query_cursor_delete (lisp_query->cursor);
1229} 1231}
1230 1232
1231/* The following function is called from print.c:print_vectorlike. */ 1233/* The following function is called from print.c:print_vectorlike. */