From: Richard M. Stallman Date: Thu, 19 May 1994 05:54:26 +0000 (+0000) Subject: (menu-bar-update-buffers): Record buffers' mod and X-Git-Tag: emacs-19.34~8303 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=c91c739e64db76a4682df0bff1c5583ee2492d7c;p=emacs.git (menu-bar-update-buffers): Record buffers' mod and read-only flags, and recompute if they change. --- diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 8b33d7d08c3..c89a356b6af 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -264,11 +264,19 @@ A large number or nil slows down menu responsiveness.") (defun menu-bar-update-buffers () (let ((buffers (buffer-list)) (frames (frame-list)) + buffers-info buffers-menu frames-menu) - (if (and (equal buffers menu-bar-update-buffers-last-buffers) + (setq buffers-info + (mapcar (function (lambda (buffer) + (list buffer (buffer-modified-p buffer) + (save-excursion + (set-buffer buffer) + buffer-read-only)))) + buffers)) + (if (and (equal buffers-info menu-bar-update-buffers-last-buffers) (equal frames menu-bar-update-buffers-last-frames)) nil - (setq menu-bar-update-buffers-last-buffers buffers) + (setq menu-bar-update-buffers-last-buffers buffers-info) (setq menu-bar-update-buffers-last-frames frames) ;; If requested, list only the N most recently selected buffers. (if (and (integerp buffers-menu-max-size)