From: Stefan Monnier Date: Wed, 2 Aug 2006 14:08:49 +0000 (+0000) Subject: (PC-expand-many-files): Avoid signalling an error when X-Git-Tag: emacs-pretest-22.0.90~1136 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=424f4c9cfaf7c44e1e4ed1cc21d0d13f7dd59331;p=emacs.git (PC-expand-many-files): Avoid signalling an error when the current directory doesn't exist. Reported by Michaƫl Cadilhac. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9e028970a00..a8d70ba5619 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2006-08-02 Stefan Monnier + + * complete.el (PC-expand-many-files): Avoid signalling an error when + the current directory doesn't exist. Reported by Micha,Ak(Bl Cadilhac. + 2006-08-02 Andreas Schwab * bindings.el (mode-line-format): Simplify reference to vc-mode. diff --git a/lisp/complete.el b/lisp/complete.el index ca6231893c3..c49ad488536 100644 --- a/lisp/complete.el +++ b/lisp/complete.el @@ -811,6 +811,12 @@ or properties are considered." (defun PC-expand-many-files (name) (with-current-buffer (generate-new-buffer " *Glob Output*") (erase-buffer) + (when (and (file-name-absolute-p name) + (not (file-directory-p default-directory))) + ;; If the current working directory doesn't exist `shell-command' + ;; signals an error. So if the file names we're looking for don't + ;; depend on the working directory, switch to a valid directory first. + (setq default-directory "/")) (shell-command (concat "echo " name) t) (goto-char (point-min)) ;; CSH-style shells were known to output "No match", whereas