summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1999-07-01 01:00:42 +0000
committerRichard M. Stallman <rms@gnu.org>1999-07-01 01:00:42 +0000
commit1c64011b787b44a4bb67d86c9f049b6b118da21f (patch)
treefdfc6b3223ab8cf3570fd6284d2b5fe3ec05ef25 /lisp
parentac1f48a4dc28f2634b482ef7adda0c8919d1a663 (diff)
downloademacs-1c64011b787b44a4bb67d86c9f049b6b118da21f.tar.gz
(sh-feature): If nothing is known about the given shell, use the
values for `sh'.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/progmodes/sh-script.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 622e63512d0..1c6994b1fc8 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -883,6 +883,7 @@ Else indexing follows an inheritance logic which works in two ways:
- Fall back on successive ancestors (see `sh-ancestor-alist') as long as
the alist contains no value for the current shell.
+ The ultimate default is always `sh'.
- If the value thus looked up is a list starting with `eval' its `cdr' is
first evaluated. If that is also a list and the first argument is a
@@ -906,6 +907,9 @@ in ALIST."
(while (and sh-shell
(not (setq elt (assq sh-shell list))))
(setq sh-shell (cdr (assq sh-shell sh-ancestor-alist))))
+ ;; If the shell is not known, treat it as sh.
+ (unless elt
+ (setq elt (assq 'sh list)))
(if (and (consp (setq val (cdr elt)))
(eq (car val) 'eval))
(setcdr elt