desktop.el doesn't save TAGS files (skipped according to the current default value of the option `desktop-buffers-not-to-save'), but saves information about TAGS-LISP. This causes `find-tag' (M-.) to fail after restoring the desktop due to the attempt to call nil function:
Debugger entered--Lisp error: (void-function nil) nil() tags-included-tables() tags-table-extend-computed-list() ... That's because when desktop.el restores TAGS-LISP, it doesn't initialize its local variables by the function `initialize-new-tags-table', so `tags-included-tables-function' has the value nil, and `tags-included-tables' fails when it tries to call it. I think desktop.el should not save TAGS-LISP and other similar files too: Index: lisp/desktop.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/desktop.el,v retrieving revision 1.94 diff -c -r1.94 desktop.el *** lisp/desktop.el 12 Oct 2005 09:16:35 -0000 1.94 --- lisp/desktop.el 17 Oct 2005 08:04:59 -0000 *************** *** 295,301 **** ;; (ftp) files because they require passwords and whatnot. ;; TAGS files to save time (tags-file-name is saved instead). (defcustom desktop-buffers-not-to-save ! "\\(^nn\\.a[0-9]+\\|\\.log\\|(ftp)\\|^tags\\|^TAGS\\)$" "Regexp identifying buffers that are to be excluded from saving." :type 'regexp :group 'desktop) --- 295,301 ---- ;; (ftp) files because they require passwords and whatnot. ;; TAGS files to save time (tags-file-name is saved instead). (defcustom desktop-buffers-not-to-save ! "\\(^nn\\.a[0-9]+\\|\\.log\\|(ftp)\\|^tags\\|^TAGS.*\\)$" "Regexp identifying buffers that are to be excluded from saving." :type 'regexp :group 'desktop) -- Juri Linkov http://www.jurta.org/emacs/ _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel