GNU bug report logs - #9278
rgrep fails on grep-find-command

Previous Next

Package: emacs;

Reported by: Juri Linkov <juri <at> jurta.org>

Date: Wed, 10 Aug 2011 19:59:02 UTC

Severity: normal

Tags: patch

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

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 9278 in the body.
You can then email your comments to 9278 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#9278; Package emacs. (Wed, 10 Aug 2011 19:59:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Juri Linkov <juri <at> jurta.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 10 Aug 2011 19:59:02 GMT) Full text and rfc822 format available.

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

From: Juri Linkov <juri <at> jurta.org>
To: bug-gnu-emacs <at> gnu.org
Subject: rgrep fails on grep-find-command
Date: Wed, 10 Aug 2011 22:38:05 +0300
Tags: patch

With some grep default values, typing `C-u C-u M-x rgrep RET M-p RET'
fails with:

(wrong-type-argument stringp ("find . -type f -exec grep -inH -e  {} +" . 35))

because `grep-compute-defaults' computes the default value of
`grep-find-command' to ("find . -type f -exec grep -inH -e {} +" . 35)
i.e. a cons of (STRING . POSITION) for INITIAL-CONTENTS
of `read-from-minibuffer' in `rgrep' and `grep-find'.

I don't know why `grep-find-command' has such a format (that also
is not documented in its docstring), but currently I don't see
a better solution.

So unless someone can propose a better fix, I'd like to install:

=== modified file 'lisp/progmodes/grep.el'
--- lisp/progmodes/grep.el	2011-08-10 18:15:32 +0000
+++ lisp/progmodes/grep.el	2011-08-10 19:30:02 +0000
@@ -965,7 +965,9 @@ (defun rgrep (regexp &optional files dir
     (unless (and dir (file-directory-p dir) (file-readable-p dir))
       (setq dir default-directory))
     (if (null files)
-	(if (not (string= regexp grep-find-command))
+	(if (not (string= regexp (if (consp grep-find-command)
+				     (car grep-find-command)
+				   grep-find-command)))
 	    (compilation-start regexp 'grep-mode))
       (setq dir (file-name-as-directory (expand-file-name dir)))
       (require 'find-dired)		; for `find-name-arg'





Reply sent to Juri Linkov <juri <at> jurta.org>:
You have taken responsibility. (Wed, 17 Aug 2011 17:17:02 GMT) Full text and rfc822 format available.

Notification sent to Juri Linkov <juri <at> jurta.org>:
bug acknowledged by developer. (Wed, 17 Aug 2011 17:17:02 GMT) Full text and rfc822 format available.

Message #10 received at 9278-done <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> jurta.org>
To: 9278-done <at> debbugs.gnu.org
Subject: Re: bug#9278: rgrep fails on grep-find-command
Date: Wed, 17 Aug 2011 20:12:47 +0300
Fixed.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 15 Sep 2011 11:24:03 GMT) Full text and rfc822 format available.

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

Previous Next


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