GNU bug report logs - #6362
Emacs command `dired-isearch-filenames-regexp' cause CPU usage 100%

Previous Next

Package: emacs;

Reported by: Li Zhai <mrzhaili <at> gmail.com>

Date: Sun, 6 Jun 2010 03:37:01 UTC

Severity: normal

Found in version 23.2.1

Done: Juri Linkov <juri <at> jurta.org>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 6362 <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> jurta.org>
To: Li Zhai <mrzhaili <at> gmail.com>
Cc: 6362 <at> debbugs.gnu.org
Subject: Re: bug#6362: Emacs command `dired-isearch-filenames-regexp' cause
	CPU usage 100%
Date: Sun, 06 Jun 2010 12:54:55 +0300
> I use the command `dired-isearch-filenames-regexp' to find some files
> in a directory. I use the the anchor `^' to match the files start with
> something. Emacs is suspended and the CPU usage is 100%.Here is a
> transcript:
>
> 1. Open a directory in dired mode.
> 2. Input `M-x dired-isearch-filenames-regexp RET  ^ f RET'
>
> Emacs will suspend rather than match the file names start with `f'.

Thanks for the report.  I fixed looping in lazy-highlighting.
Now the loop in `isearch-lazy-highlight-search' is exactly like
in `isearch-search' that checks for the empty match (and
`isearch-lazy-highlight-update' takes care about forwarding
point to the next character in this case).

As for implementing matching at the beginning of file names with `^',
it seems this is not possible to do.  `re-search-forward' matches only
at the beginning of a line, not in the middle of a line.

You can observe the same problem with query-replace in wdired.
For instance, type:

1. M-x wdired-change-to-wdired-mode RET
2. M-x query-replace-regexp RET ^f RET replacement RET

Do you expect that query-replace will rename file names
that start with `f'?

-- 
Juri Linkov
http://www.jurta.org/emacs/




This bug report was last modified 13 years and 260 days ago.

Previous Next


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