[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#60237: 30.0.50; tree sitter core dumps when I edebug view a node
From: |
Eli Zaretskii |
Subject: |
bug#60237: 30.0.50; tree sitter core dumps when I edebug view a node |
Date: |
Sat, 25 Feb 2023 09:55:33 +0200 |
> From: Yuan Fu <casouri@gmail.com>
> Date: Fri, 24 Feb 2023 15:29:15 -0800
> Cc: eliz@gnu.org,
> 60237@debbugs.gnu.org
>
> Maybe it will help us understand the problem better, so here is the
> backtrace for the infinite loop. I’m not sure why treesit_delete_parser
> would trigger gc, as it just calls two tree_sitter functions:
>
> void
> treesit_delete_parser (struct Lisp_TS_Parser *lisp_parser)
> {
> ts_tree_delete (lisp_parser->tree);
> ts_parser_delete (lisp_parser->parser);
> }
According to the backtrace, it's the other way around: Emacs called
some function via funcall, and funcall decided it was a good time to
do a GC. Then GC called treesit_delete_parser, presumably because
that parser object was no longer in use?