summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2013-10-16 23:56:51 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2013-10-16 23:56:51 -0400
commit85527ff309fc9ac5fbda80b119f021719902cc7c (patch)
tree613f0c94ed32a475b503089c4e0bf54d842bd12f
parentc8722a9799832942ff219f4ae881f44985c35924 (diff)
downloademacs-85527ff309fc9ac5fbda80b119f021719902cc7c.tar.gz
* lisp/progmodes/sh-script.el (sh-find-prev-matching): Disable SMIE's
forward-sexp-function while we redo its job. Fixes: debbugs:15613
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/progmodes/sh-script.el1
-rwxr-xr-xtest/indent/shell.sh6
3 files changed, 12 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 542a9108d32..bbff921661d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2013-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-find-prev-matching): Disable SMIE's
+ forward-sexp-function while we redo its job (bug#15613).
+
2013-10-17 Jay Belanger <jay.p.belanger@gmail.com>
* calc/calc-comb.el (math-prime-test): Don't assume large integers are
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index ec73a06955c..f834d7f3217 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -3097,6 +3097,7 @@ This takes into account that there may be nested open..close pairings.
OPEN and CLOSE are regexps denoting the tokens to be matched.
Optional parameter DEPTH (usually 1) says how many to look for."
(let ((parse-sexp-ignore-comments t)
+ (forward-sexp-function nil)
prev)
(setq depth (or depth 1))
(save-excursion
diff --git a/test/indent/shell.sh b/test/indent/shell.sh
index 790656501d1..e402398b996 100755
--- a/test/indent/shell.sh
+++ b/test/indent/shell.sh
@@ -5,6 +5,12 @@ setlock -n /tmp/getmail.lock && echo getmail isn\'t running
# adsgsdg
+if foo; then
+ if bar; then
+ toto
+ fi
+fi # bug#15613
+
case $X in
foo)
do_something