GNU bug report logs - #12196
24.1.50; setting cache-long-line-scans to non-nil freezes Emacs

Previous Next

Package: emacs;

Reported by: michael_heerdegen <at> web.de

Date: Tue, 14 Aug 2012 05:01:01 UTC

Severity: normal

Found in version 24.1.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Christopher Schmidt <christopher <at> ch.ristopher.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 12196 <at> debbugs.gnu.org
Subject: bug#12196: 24.1.50; setting cache-long-line-scans to non-nil freezes Emacs
Date: Mon, 10 Sep 2012 14:19:00 +0100 (BST)
Eli Zaretskii <eliz <at> gnu.org> writes:
> Thanks.  Does the patch below help?
> === modified file 'src/search.c'
> --- src/search.c	2012-09-04 17:34:54 +0000
> +++ src/search.c	2012-09-10 11:07:13 +0000
> @@ -681,10 +681,11 @@ scan_buffer (register int target, ptrdif
>             to see where we can avoid some scanning.  */
>          if (target == '\n' && newline_cache)
>            {
> -            ptrdiff_t next_change;
> +            ptrdiff_t next_change = 0;
>              immediate_quit = 0;
>              while (region_cache_forward
> -                   (current_buffer, newline_cache, start_byte, &next_change))
> +                   (current_buffer, newline_cache, start_byte, &next_change)
> +                || next_change == Z)
>                start_byte = next_change;
>              immediate_quit = allow_quit;

Unfortunately it does not.  Emacs now loops indefinitely right during
startup.  In this case, next_change is always equal to Z and the while
loop is never exited.

        Christopher




This bug report was last modified 12 years and 310 days ago.

Previous Next


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