diff options
author | John Wiegley <johnw@newartisans.com> | 2005-05-27 02:57:18 +0000 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2005-05-27 02:57:18 +0000 |
commit | 6b6f91b357f6fe2f1e0d72f046a1b8d8a2d6d8c3 (patch) | |
tree | cea28fba7cc58871cf937fd7799bd44e8b8834da /lisp/eshell | |
parent | 9c041409339fbd92ca875ba034bcf8ca3410330e (diff) | |
download | emacs-6b6f91b357f6fe2f1e0d72f046a1b8d8a2d6d8c3.tar.gz |
(eshell-eval-command): If the return value of `eshell-resume-eval' is
wrapped in a list, it indicates that the command was run
asynchronously. In that case, unwrap the value before checking the
delimiter value.
Diffstat (limited to 'lisp/eshell')
-rw-r--r-- | lisp/eshell/esh-cmd.el | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/lisp/eshell/esh-cmd.el b/lisp/eshell/esh-cmd.el index d7c65066ac6..355369d35ae 100644 --- a/lisp/eshell/esh-cmd.el +++ b/lisp/eshell/esh-cmd.el @@ -757,7 +757,7 @@ nil)' if none)." (defmacro eshell-do-subjob (object) "Evaluate a command OBJECT as a subjob. -We indicate thet the process was run in the background by returned it +We indicate that the process was run in the background by returning it ensconced in a list." `(let ((eshell-current-subjob-p t)) ,object)) @@ -1006,11 +1006,10 @@ at the moment are: (eshell-resume-eval)))) ;; On systems that don't support async subprocesses, eshell-resume ;; can return t. Don't treat that as an error. + (if (listp delim) + (setq delim (car delim))) (if (and delim (not (eq delim t))) - (error "Unmatched delimiter: %c" - (if (listp delim) - (car delim) - delim)))))) + (error "Unmatched delimiter: %c" delim))))) (defun eshell-resume-command (proc status) "Resume the current command when a process ends." |