GNU bug report logs - #60237
30.0.50; tree sitter core dumps when I edebug view a node

Previous Next

Package: emacs;

Reported by: Mickey Petersen <mickey <at> masteringemacs.org>

Date: Wed, 21 Dec 2022 12:30:02 UTC

Severity: normal

Found in version 30.0.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Yuan Fu <casouri <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Mickey Petersen <mickey <at> masteringemacs.org>, 60237 <at> debbugs.gnu.org
Subject: bug#60237: 30.0.50; tree sitter core dumps when I edebug view a node
Date: Sat, 25 Feb 2023 18:02:00 -0800

> On Feb 24, 2023, at 11:55 PM, Eli Zaretskii <eliz <at> gnu.org> wrote:
> 
>> From: Yuan Fu <casouri <at> gmail.com>
>> Date: Fri, 24 Feb 2023 15:29:15 -0800
>> Cc: eliz <at> gnu.org,
>> 60237 <at> 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?

Ah, right. I forgot it’s not a callstack.

Yuan



This bug report was last modified 2 years and 70 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.