Fix some minor shell.el oddness related to usage of error and message

* lisp/shell.el (shell-directory-tracker): Output error as a message
rather than just returning it as a string.
(shell-process-pushd): Remove useless use of message.
This commit is contained in:
Glenn Morris 2013-09-11 22:40:50 -07:00
parent 30213927b6
commit 8c05cb1082
2 changed files with 7 additions and 4 deletions

View file

@ -1,5 +1,9 @@
2013-09-12 Glenn Morris <rgm@gnu.org>
* shell.el (shell-directory-tracker): Output error as a message
rather than just returning it as a string.
(shell-process-pushd): Remove useless use of message.
* dframe.el (dframe-timer-fn):
* files.el (dir-locals-read-from-file):
* mpc.el (mpc--status-timer-run, mpc--status-idle-timer-run)

View file

@ -791,7 +791,7 @@ and `shell-pushd-dunique' control the behavior of the relevant command.
Environment variables are expanded, see function `substitute-in-file-name'."
(if shell-dirtrackp
;; We fail gracefully if we think the command will fail in the shell.
(condition-case nil
(with-demoted-errors "Couldn't cd: %s"
(let ((start (progn (string-match
(concat "^" shell-command-separator-regexp)
str) ; skip whitespace
@ -824,8 +824,7 @@ Environment variables are expanded, see function `substitute-in-file-name'."
(setq start (progn (string-match shell-command-separator-regexp
str end)
;; skip again
(match-end 0)))))
(error "Couldn't cd"))))
(match-end 0))))))))
(defun shell-unquote-argument (string)
"Remove all kinds of shell quoting from STRING."
@ -907,7 +906,7 @@ Environment variables are expanded, see function `substitute-in-file-name'."
(cond ((> num (length shell-dirstack))
(message "Directory stack not that deep."))
((= num 0)
(error (message "Couldn't cd")))
(error "Couldn't cd"))
(shell-pushd-dextract
(let ((dir (nth (1- num) shell-dirstack)))
(shell-process-popd arg)