changeset 82431:36aa5fc31532

Fix s{a}{b} parsing
author Vinicius Jose Latorre <viniciusjl@ig.com.br>
date Fri, 17 Aug 2007 18:57:47 +0000
parents 5c17a56b467b
children dc09c3d8a304
files lisp/ChangeLog lisp/progmodes/cperl-mode.el
diffstat 2 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Aug 17 10:10:11 2007 +0000
+++ b/lisp/ChangeLog	Fri Aug 17 18:57:47 2007 +0000
@@ -1,3 +1,9 @@
+2007-08-17  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>  (tiny change)
+
+	* progmode/cperl-mode.el (cperl-look-at-leading-count)
+	(cperl-find-pods-heres): Fix an error when typing expressions like
+	`s{a}{b}'.
+
 2007-08-17  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>
 
 	* mail/emacsbug.el (report-emacs-bug): Remove the last number of
--- a/lisp/progmodes/cperl-mode.el	Fri Aug 17 10:10:11 2007 +0000
+++ b/lisp/progmodes/cperl-mode.el	Fri Aug 17 18:57:47 2007 +0000
@@ -3736,8 +3736,12 @@
 	(set-syntax-table reset-st))))
 
 (defsubst cperl-look-at-leading-count (is-x-REx e)
-  (if (re-search-forward (concat "\\=" (if is-x-REx "[ \t\n]*" "") "[{?+*]")
-			 (1- e) t)	; return nil on failure, no moving
+  (if (and (> (point) e)
+	   ;; return nil on failure, no moving
+	   (re-search-forward (concat "\\="
+				      (if is-x-REx "[ \t\n]*" "")
+				      "[{?+*]")
+			      (1- e) t))
       (if (eq ?\{ (preceding-char)) nil
 	(cperl-postpone-fontification
 	 (1- (point)) (point)
@@ -3750,7 +3754,7 @@
 the sections using `cperl-pod-head-face', `cperl-pod-face',
 `cperl-here-face'."
   (interactive)
- (or min (setq min (point-min)
+  (or min (setq min (point-min)
 		cperl-syntax-state nil
 		cperl-syntax-done-to min))
   (or max (setq max (point-max)))
@@ -4785,7 +4789,8 @@
 		      (progn
 			(cperl-postpone-fontification
 			 (1- e1) e1 'face my-cperl-delimiters-face)
-			(if (assoc (char-after b) cperl-starters)
+			(if (and (not (eobp))
+				 (assoc (char-after b) cperl-starters))
 			    (progn
 			      (cperl-postpone-fontification
 			       b1 (1+ b1) 'face my-cperl-delimiters-face)