bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#59038: loading this base64 file makes emacs -Q 28.2 peg a core infin


From: Eli Zaretskii
Subject: bug#59038: loading this base64 file makes emacs -Q 28.2 peg a core infinitely
Date: Sun, 06 Nov 2022 15:52:33 +0200

> Date: Sun, 06 Nov 2022 09:18:23 +0000
> From: Gregory Heytings <gregory@heytings.org>
> cc: Eli Zaretskii <eliz@gnu.org>, 
>     Gerd Möllmann <gerd.moellmann@gmail.com>, 
>     59038@debbugs.gnu.org, checker@d6.com, acm@muc.de
> 
> 
> >> That file opens just fine in other modes
> >
> > It also opens fine in c-mode, with global-font-lock-mode disabled.
> >
> 
> Indeed, obviously it's a c-mode font-locking related bug.
> 
> >> Note that this bug has nothing to do with long lines.
> >
> > I imagine that the font-lock issue is related to the line being in 
> > excess of 21,000 chars (but general redisplay obviously doesn't have 
> > problems with lines this 'small').
> >
> > Reduced to 10,208 chars that file opens instantly under emacs -Q in 
> > c-mode with font-lock enabled; but at 10,209 chars it hangs Emacs (I 
> > killed it after waiting 4 minutes).
> >
> 
> Interesting, thanks for the bisection!

It's an infloop in c-brace-stack-at.

What happens is that c-brace-stack-at calls c-update-brace-stack with
arguments: (nil 1) 8160 13160.  c-update-brace-stack then calls
c-syntactic-re-search-forward, which finds nothing interesting and
returns with point at 13160, but then c-update-brace-stack calls
c-beginning-of-current-token, which returns point back to 8160.  And
it goes on and on and on...

Alan, what can be done with this?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]