diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 704f7a6d8d83eb746d6f5c8fdc2eb62996ad2a15..7f08a133d98538e8da9e8056cb127fe8a1b63862 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2014-04-13 João Távora + + * elec-pair.el (electric-pair--syntax-ppss): Simplify and fix + possible bug. + 2014-04-13 Eli Zaretskii * frame.el (blink-cursor-blinks, blink-cursor-blinks-done): Doc fixes. diff --git a/lisp/elec-pair.el b/lisp/elec-pair.el index 04e1840c0a5879a10861f974c6a3ba4d9bfff06b..42b8a912cc4e39fcb7558e5b1929dceff7ca69d5 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