etags.el fix for bug#13412

* lisp/progmodes/etags.el (tags-table-check-computed-list):
Preserve point in tags buffer.
This commit is contained in:
Glenn Morris 2013-01-16 21:07:25 -05:00
parent 085d34c46a
commit 19503d5abf
2 changed files with 15 additions and 6 deletions

View file

@ -1,3 +1,8 @@
2013-01-17 Glenn Morris <rgm@gnu.org>
* progmodes/etags.el (tags-table-check-computed-list):
Preserve point in tags buffer. (Bug#13412)
2013-01-16 Glenn Morris <rgm@gnu.org>
* emacs-lisp/lisp-mode.el (lisp-indent-function): Doc fix.

View file

@ -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)