GNU bug report logs - #40940
27.0.91; project-query-replace-regexp stops too early

Previous Next

Package: emacs;

Reported by: Simen Heggestøyl <simenheg <at> runbox.com>

Date: Tue, 28 Apr 2020 14:57:02 UTC

Severity: normal

Found in version 27.0.91

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: simenheg <at> runbox.com, Eli Zaretskii <eliz <at> gnu.org>, monnier <at> IRO.UMontreal.CA, 40940 <at> debbugs.gnu.org
Subject: bug#40940: 27.0.91; project-query-replace-regexp stops too early
Date: Wed, 29 Apr 2020 20:38:49 +0200
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> On 29.04.2020 19:44, Eli Zaretskii wrote:
>> Dmitry, this means my change should be reworked to call
>> expand-file-name before file-local-name, right?
>
> Seems so.
>
> Something like this?
>
> diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
> index dbc967b885..f80b4328bc 100644
> --- a/lisp/progmodes/project.el
> +++ b/lisp/progmodes/project.el
> @@ -185,17 +185,16 @@ project--files-in-directory
>    (require 'find-dired)
>    (require 'xref)
>    (defvar find-name-arg)
> -  (let* ((default-directory dir)
> -         (dirname (file-remote-p dir 'localname))
> -         (dirname (or dirname
> -                      ;; Make sure ~/ etc. in local directory name is
> -                      ;; expanded and not left for the shell command
> -                      ;; to interpret.
> -                      (expand-file-name dir)))
> +  (let* ((dir
> +          ;; Make sure ~/ etc. in local directory name is
> +          ;; expanded and not left for the shell command
> +          ;; to interpret.
> +          (expand-file-name dir))
> +         (default-directory dir)
>           (command (format "%s %s %s -type f %s -print0"
>                            find-program
> -                          dirname
> -                          (xref--find-ignores-arguments ignores dirname)
> +                          dir
> +                          (xref--find-ignores-arguments ignores dir)
>                            (if files
>                                (concat (shell-quote-argument "(")
>                                        " " find-name-arg " "

No. dir is a remote file name. So you must still declare dirname as
(file-local-name dir).

Best regards, Michael.




This bug report was last modified 5 years and 112 days ago.

Previous Next


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