X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/bfce64768d8b655ca4a7c60c50a17cc20c6ef0b5..a03b3ce13b064a5f775525d8208e747b87a169cf:/lisp/add-log.el diff --git a/lisp/add-log.el b/lisp/add-log.el index b71257a015..287ff094ae 100644 --- a/lisp/add-log.el +++ b/lisp/add-log.el @@ -1,4 +1,4 @@ -;; add-log.el --- change log maintenance commands for Emacs +;;; add-log.el --- change log maintenance commands for Emacs ;; Copyright (C) 1985, 86, 88, 93, 94, 97, 1998 Free Software Foundation, Inc. @@ -491,18 +491,22 @@ Has a preference of looking backwards." (or (eobp) (forward-char 1)) (beginning-of-defun) ;; Make sure we are really inside the defun found, not after it. - (if (and (looking-at "\\s(") - (progn (end-of-defun) - (< location (point))) - (progn (forward-sexp -1) - (>= location (point)))) - (progn - (if (looking-at "\\s(") - (forward-char 1)) - (forward-sexp 1) - (skip-chars-forward " '") - (buffer-substring (point) - (progn (forward-sexp 1) (point)))))) + (when (and (looking-at "\\s(") + (progn (end-of-defun) + (< location (point))) + (progn (forward-sexp -1) + (>= location (point)))) + (if (looking-at "\\s(") + (forward-char 1)) + ;; Skip the defining construct name, typically "defun" + ;; or "defvar". + (forward-sexp 1) + ;; The second element is usually a symbol being defined. + ;; If it is not, use the first symbol in it. + (skip-chars-forward " \t\n'(") + (buffer-substring (point) + (progn (forward-sexp 1) + (point))))) ((and (memq major-mode add-log-c-like-modes) (save-excursion (beginning-of-line)