GNU bug report logs -
#29303
25.2; vc-git-grep should shell-escape FILES
Previous Next
Reported by: Angus Lees <gus <at> inodes.org>
Date: Wed, 15 Nov 2017 06:51:02 UTC
Severity: normal
Found in version 25.2
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #20 received at 29303 <at> debbugs.gnu.org (full text, mbox):
Eli Zaretskii <eliz <at> gnu.org> writes:
>> From: Robert Pluim <rpluim <at> gmail.com>
>> diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
>> index ed85603f82..43164b4fcf 100644
>> --- a/lisp/vc/vc-git.el
>> +++ b/lisp/vc/vc-git.el
>> @@ -1428,7 +1428,7 @@ vc-git-grep
>> nil nil 'grep-history)
>> nil))
>> (t (let* ((regexp (grep-read-regexp))
>> - (files (grep-read-files regexp))
>> + (files (mapconcat #'shell-quote-argument (split-string (grep-read-files regexp)) " "))
>> (dir (read-directory-name "In directory: "
>> nil default-directory t)))
>> (list regexp files dir))))))
>
> That's okay portability-wise, but why do you need split-string?
> AFAIU, grep-read-files reads a single pattern, no?
grep-read-files has support for grep-files-aliases which allows you to
eg say 'cc' and have it expand to "*.cc *.cxx *.cpp *.C *.CC *.c++"
It's also possible to enter multiple patterns using grep-read-files,
although you have to do things like ^Q<SPC> to get a space into the
string. That might be worth fixing separately.
Robert
This bug report was last modified 7 years and 272 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.