GNU bug report logs -
#12196
24.1.50; setting cache-long-line-scans to non-nil freezes Emacs
Previous Next
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>
> Cc: bug-gnu-emacs <at> gnu.org
> 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.
How about the one below?
Once again, a reproducible recipe with buffer text that causes the
infloop would help immensely, TIA.
=== modified file 'src/search.c'
--- src/search.c 2012-09-04 17:34:54 +0000
+++ src/search.c 2012-09-10 17:06:46 +0000
@@ -666,7 +666,7 @@ scan_buffer (register int target, ptrdif
immediate_quit = allow_quit;
if (count > 0)
- while (start != end)
+ while (start < end)
{
/* Our innermost scanning loop is very simple; it doesn't know
about gaps, buffer ends, or the newline cache. ceiling is
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.