comparison lisp/calendar/diary-lib.el @ 110639:75c1013c664c

Minor diary include improvement. * lisp/calendar/diary-lib.el (diary-include-other-diary-files): Trap some recursive includes.
author Glenn Morris <rgm@gnu.org>
date Tue, 28 Sep 2010 21:00:50 -0700
parents 87d704ff4a52
children f7f67bd95f3d
comparison
equal deleted inserted replaced
110638:e82d503da7c2 110639:75c1013c664c
846 nil t) 846 nil t)
847 (let ((diary-file (match-string-no-properties 1)) 847 (let ((diary-file (match-string-no-properties 1))
848 (diary-list-entries-hook 'diary-include-other-diary-files) 848 (diary-list-entries-hook 'diary-include-other-diary-files)
849 (diary-display-function 'ignore) 849 (diary-display-function 'ignore)
850 (diary-including t) 850 (diary-including t)
851 diary-hook diary-list-include-blanks) 851 diary-hook diary-list-include-blanks efile)
852 (if (file-exists-p diary-file) 852 (if (file-exists-p diary-file)
853 (if (file-readable-p diary-file) 853 (if (file-readable-p diary-file)
854 (unwind-protect 854 (unwind-protect
855 (setq diary-included-files 855 (if (member (setq efile (expand-file-name diary-file))
856 (append diary-included-files 856 diary-included-files)
857 (list (expand-file-name diary-file))) 857 (error "Recursive diary include for %s" diary-file)
858 diary-entries-list 858 (setq diary-included-files
859 (append diary-entries-list 859 (append diary-included-files (list efile))
860 (diary-list-entries original-date number))) 860 diary-entries-list
861 (append diary-entries-list
862 (diary-list-entries original-date number))))
861 (with-current-buffer (find-buffer-visiting diary-file) 863 (with-current-buffer (find-buffer-visiting diary-file)
862 (diary-unhide-everything))) 864 (diary-unhide-everything)))
863 (beep) 865 (beep)
864 (message "Can't read included diary file %s" diary-file) 866 (message "Can't read included diary file %s" diary-file)
865 (sleep-for 2)) 867 (sleep-for 2))