summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/emacs-lisp/lisp.el14
2 files changed, 14 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index bb113227b68..73f01a0daa6 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp.el (end-of-defun): Don't skip to next line after
+ calling end-of-defun-function if it already moved to BOL.
+
2009-02-12 Richard M Stallman <rms@gnu.org>
* mail/rmail.el (rmail-show-message-verbose-min): New option.
@@ -106,8 +111,7 @@
2009-02-09 Ulf Jasper <ulf.jasper@web.de>
* net/newst-treeview.el (newsticker-treeview-save)
- (newsticker--treeview-load): Kill groups buffer after
- saving/loading.
+ (newsticker--treeview-load): Kill groups buffer after saving/loading.
2009-02-09 Tassilo Horn <tassilo@member.fsf.org>
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el
index ba1546980ae..b53c98acb7e 100644
--- a/lisp/emacs-lisp/lisp.el
+++ b/lisp/emacs-lisp/lisp.el
@@ -348,9 +348,10 @@ is called as a function to find the defun's end."
(beginning-of-defun-raw 1)
(while (unless (eobp)
(funcall end-of-defun-function)
- (skip-chars-forward " \t")
- (if (looking-at "\\s<\\|\n")
- (forward-line 1))
+ (unless (bolp)
+ (skip-chars-forward " \t")
+ (if (looking-at "\\s<\\|\n")
+ (forward-line 1)))
;; If we started after the end of the previous
;; function, try again with the next one.
(unless (or (> (point) pos)
@@ -370,9 +371,10 @@ is called as a function to find the defun's end."
(let ((beg (point))
retry-point)
(funcall end-of-defun-function)
- (skip-chars-forward " \t")
- (if (looking-at "\\s<\\|\n")
- (forward-line 1))
+ (unless (bolp)
+ (skip-chars-forward " \t")
+ (if (looking-at "\\s<\\|\n")
+ (forward-line 1)))
;; If we started from within the function just found,
;; try again with the previous one.
(unless (or (< (point) pos)