emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r107605: * lisp/progmodes/perl-mode.e


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r107605: * lisp/progmodes/perl-mode.el (perl-syntax-propertize-special-constructs):
Date: Wed, 14 Mar 2012 23:09:26 -0400
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 107605
fixes bug(s): http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11014
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Wed 2012-03-14 23:09:26 -0400
message:
  * lisp/progmodes/perl-mode.el (perl-syntax-propertize-special-constructs):
  Fix up parsing of multiline twoarg non-paired elements.
modified:
  lisp/ChangeLog
  lisp/progmodes/perl-mode.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-03-15 01:38:40 +0000
+++ b/lisp/ChangeLog    2012-03-15 03:09:26 +0000
@@ -1,5 +1,8 @@
 2012-03-15  Stefan Monnier  <address@hidden>
 
+       * progmodes/perl-mode.el (perl-syntax-propertize-special-constructs):
+       Fix up parsing of multiline twoarg non-paired elements (bug#11014).
+
        * imenu.el: Fix multiple inheritance breakage (bug#9199).
        (imenu-add-to-menubar): Don't add a redundant index.
        (imenu-update-menubar): Handle a dynamically composed keymap.

=== modified file 'lisp/progmodes/perl-mode.el'
--- a/lisp/progmodes/perl-mode.el       2012-01-19 07:21:25 +0000
+++ b/lisp/progmodes/perl-mode.el       2012-03-15 03:09:26 +0000
@@ -388,7 +388,11 @@
                       ;; In case of error, make sure we don't move backward.
                      (scan-error (goto-char startpos) nil))
                  (not (or (nth 8 (parse-partial-sexp
-                                  (point) limit nil nil state 'syntax-table))
+                                  ;; Since we don't know if point is within
+                                  ;; the first or the scond arg, we have to
+                                  ;; start from the beginning.
+                                  (if twoargs (1+ (nth 8 state)) (point))
+                                  limit nil nil state 'syntax-table))
                           ;; If we have a self-paired opener and a twoargs
                           ;; command, the form is s/../../ so we have to skip
                           ;; a second time.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]