GNU bug report logs - #21657
25.0.50; Python mode goes into an infinite loop

Previous Next

Package: emacs;

Reported by: Dima Kogan <dima <at> secretsauce.net>

Date: Fri, 9 Oct 2015 22:23:02 UTC

Severity: normal

Tags: confirmed, fixed, patch

Merged with 21628, 21629, 21646, 21671, 24839, 24856, 24905, 26041

Found in versions 25.0.50, 25.1, 25.1.50, 26.0.50

Fixed in version 25.2

Done: Daniel Colascione <dancol <at> dancol.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: immerrr again <immerrr <at> gmail.com>
To: Daniel Colascione <dancol <at> dancol.org>
Cc: 21657 <at> debbugs.gnu.org, Dima Kogan <dima <at> secretsauce.net>, Luke Powers <luke.powers <at> openx.com>
Subject: bug#21657: 25.0.50; Python mode goes into an infinite loop
Date: Tue, 13 Oct 2015 07:58:07 +0300
There's a patch to fix this in #21671.

On Tue, Oct 13, 2015 at 6:21 AM, Daniel Colascione <dancol <at> dancol.org> wrote:
> I think I know what's going on. Stefan's change moved some of the
> syntax-propertize stuff from Lisp into C. Now Emacs core has a variable
> called syntax-propertize--done, known in C as syntax_propertize__done.
> We make it buffer-local using Fmake_variable_buffer_local, but that
> makes the variable buffer-local when it's _set_. Until it's set, the
> variable retains its global value, which lives in the C variable
> syntax_propertize__done. So if we syntax-propertize 1000 characters of
> buffer A, then find-file in buffer B, we think we've syntax-propertized
> up to position 1000 (the value of syntax_propertize__done) until we set
> it to something else. In the case of Python, if we have a triple quote
> in the first 1000 characters, we infloop.
>




This bug report was last modified 8 years and 125 days ago.

Previous Next


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