summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'lisp')
-rw-r--r--lisp/progmodes/inf-lisp.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/progmodes/inf-lisp.el b/lisp/progmodes/inf-lisp.el
index 3476a7f635b..dafb89a5b65 100644
--- a/lisp/progmodes/inf-lisp.el
+++ b/lisp/progmodes/inf-lisp.el
@@ -345,8 +345,11 @@ The actually processing is done by `do-string' and `do-region'
which determine whether the code is compiled before evaluation.
DEFVAR forms reset the variables to the init values."
(save-excursion
- (end-of-defun)
- (skip-chars-backward " \t\n\r\f") ; Makes allegro happy
+ ;; Find the end of the defun this way to avoid having the region
+ ;; possibly end with a comment (it there'a a comment after the
+ ;; final parenthesis).
+ (beginning-of-defun)
+ (forward-sexp)
(let ((end (point)) (case-fold-search t))
(beginning-of-defun)
(if (looking-at "(defvar")