summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2018-10-28 17:55:00 +0200
committerEli Zaretskii <eliz@gnu.org>2018-10-28 17:55:00 +0200
commitf3050fc14e05a6eb18a70e0e7ce5d5302d5203e6 (patch)
treea5100f182b5bdbf0db39bc0c6b25d54e7df28690 /lisp/emacs-lisp
parent2fdae77eb6489a25a94f1d88a740a9672617d451 (diff)
parent3dd16a89bf410d77e9ddc41cbfbbd4b343928d6d (diff)
downloademacs-f3050fc14e05a6eb18a70e0e7ce5d5302d5203e6.tar.gz
emacs-f3050fc14e05a6eb18a70e0e7ce5d5302d5203e6.tar.bz2
emacs-f3050fc14e05a6eb18a70e0e7ce5d5302d5203e6.zip
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/lisp-mode.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index afb7cbd1dd7..46199196024 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -839,6 +839,10 @@ by more than one line to cross a string literal."
(prog1
(let (indent)
(cond ((= (forward-line 1) 1) nil)
+ ;; Negative depth, probably some kind of syntax error.
+ ((null indent-stack)
+ ;; Reset state.
+ (setq ppss (parse-partial-sexp (point) (point))))
((car indent-stack))
((integerp (setq indent (calculate-lisp-indent ppss)))
(setf (car indent-stack) indent))