From: Glenn Morris Date: Thu, 17 Jan 2013 02:07:25 +0000 (-0500) Subject: etags.el fix for bug#13412 X-Git-Tag: emacs-24.2.93~44 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=19503d5abfb9d9c1faa2e6e9e8636623c7667e54;p=emacs.git etags.el fix for bug#13412 * lisp/progmodes/etags.el (tags-table-check-computed-list): Preserve point in tags buffer. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c2d869ae827..cd7a013d55c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2013-01-17 Glenn Morris + + * progmodes/etags.el (tags-table-check-computed-list): + Preserve point in tags buffer. (Bug#13412) + 2013-01-16 Glenn Morris * emacs-lisp/lisp-mode.el (lisp-indent-function): Doc fix. diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el index dc16a2ce762..21844d20598 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el @@ -335,12 +335,15 @@ file the tag was in." (save-excursion (tags-verify-table (buffer-file-name table-buffer)))) (with-current-buffer table-buffer - (if (tags-included-tables) - ;; Insert the included tables into the list we - ;; are processing. - (setcdr tables (nconc (mapcar 'tags-expand-table-name - (tags-included-tables)) - (cdr tables))))) + ;; Needed so long as etags-tags-included-tables + ;; does not save-excursion. + (save-excursion + (if (tags-included-tables) + ;; Insert the included tables into the list we + ;; are processing. + (setcdr tables (nconc (mapcar 'tags-expand-table-name + (tags-included-tables)) + (cdr tables)))))) ;; This table is not in core yet. Insert a placeholder ;; saying we must read it into core to check for included ;; tables before searching the next table in the list. @@ -1547,6 +1550,7 @@ hits the start of file." files))) (nreverse files))) +;; FIXME? Should this save-excursion? (defun etags-tags-included-tables () ; Doc string? (let ((files nil) beg)