From 498d3768d1109a9bee2aa0207e63db79800627eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20T=C3=A1vora?= Date: Sun, 13 Apr 2014 11:27:32 +0100 Subject: Fix bug in Electric Pair mode * lisp/elec-pair.el (electric-pair--syntax-ppss): Simplify and fix possible bug. --- lisp/elec-pair.el | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'lisp/elec-pair.el') diff --git a/lisp/elec-pair.el b/lisp/elec-pair.el index 04e1840c0a5..42b8a912cc4 100644 --- a/lisp/elec-pair.el +++ b/lisp/elec-pair.el @@ -226,10 +226,9 @@ WHERE is a list defaulting to '(string comment) and indicates when to fallback to `parse-partial-sexp'." (let* ((pos (or pos (point))) (where (or where '(string comment))) - (quick-ppss (syntax-ppss)) - (quick-ppss-at-pos (syntax-ppss pos)) - (in-string (and (nth 3 quick-ppss-at-pos) (memq 'string where))) - (in-comment (and (nth 4 quick-ppss-at-pos) (memq 'comment where))) + (quick-ppss (syntax-ppss pos)) + (in-string (and (nth 3 quick-ppss) (memq 'string where))) + (in-comment (and (nth 4 quick-ppss) (memq 'comment where))) (s-or-c-start (cond (in-string (1+ (nth 8 quick-ppss))) (in-comment @@ -243,7 +242,7 @@ when to fallback to `parse-partial-sexp'." ;; HACK! cc-mode apparently has some `syntax-ppss' bugs (if (memq major-mode '(c-mode c++ mode)) (parse-partial-sexp (point-min) pos) - quick-ppss-at-pos)))) + quick-ppss)))) ;; Balancing means controlling pairing and skipping of parentheses ;; so that, if possible, the buffer ends up at least as balanced as -- cgit v1.2.1