diff options
author | Glenn Morris <rgm@gnu.org> | 2013-01-16 21:07:25 -0500 |
---|---|---|
committer | Glenn Morris <rgm@gnu.org> | 2013-01-16 21:07:25 -0500 |
commit | 19503d5abfb9d9c1faa2e6e9e8636623c7667e54 (patch) | |
tree | 476ac3f69e501f0c5abe0363cd63e43c0ac6c2c5 /lisp/progmodes | |
parent | 085d34c46ae83282b6bd1002ee9fb9be62e76594 (diff) | |
download | emacs-19503d5abfb9d9c1faa2e6e9e8636623c7667e54.tar.gz emacs-19503d5abfb9d9c1faa2e6e9e8636623c7667e54.tar.bz2 emacs-19503d5abfb9d9c1faa2e6e9e8636623c7667e54.zip |
etags.el fix for bug#13412
* lisp/progmodes/etags.el (tags-table-check-computed-list):
Preserve point in tags buffer.
Diffstat (limited to 'lisp/progmodes')
-rw-r--r-- | lisp/progmodes/etags.el | 16 |
1 files changed, 10 insertions, 6 deletions
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) |