From: Leonardo Nobrega <leonobr@gmail.com>
Date: Tue, 30 Sep 2014 23:00:57 +0000 (-0400)
Subject: * lisp/progmodes/python.el (python-fill-paren): Don't inf-loop at EOB.
X-Git-Tag: emacs-24.3.94~10
X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d3b7a90bc2ad20192d1afd23eb1aa6a18ceda569;p=emacs.git

* lisp/progmodes/python.el (python-fill-paren): Don't inf-loop at EOB.

Fixes: debbugs:18462
---

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 62d3ba4445c..9ac4f6b1bf1 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2014-09-30  Leonardo Nobrega  <leonobr@gmail.com>  (tiny change)
+
+	* progmodes/python.el (python-fill-paren): Don't inf-loop at EOB
+	(bug#18462).
+
 2014-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* emacs-lisp/package.el (package-check-signature): Default to nil if
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 740dfee5870..d5126fa8881 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -3107,7 +3107,8 @@ JUSTIFY should be used (if applicable) as in `fill-paragraph'."
                           (end-of-line)
                           (when (not (python-syntax-context 'paren))
                             (skip-syntax-backward "^)")))
-                        (while (python-syntax-context 'paren)
+                        (while (and (python-syntax-context 'paren)
+                                    (not (eobp)))
                           (goto-char (1+ (point-marker))))
                         (point-marker)))
     (let ((paragraph-start "\f\\|[ \t]*$")
@@ -3118,7 +3119,8 @@ JUSTIFY should be used (if applicable) as in `fill-paragraph'."
     (while (not (eobp))
       (forward-line 1)
       (python-indent-line)
-      (goto-char (line-end-position)))) t)
+      (goto-char (line-end-position))))
+  t)
 
 
 ;;; Skeletons