From c91c739e64db76a4682df0bff1c5583ee2492d7c Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Thu, 19 May 1994 05:54:26 +0000 Subject: [PATCH] (menu-bar-update-buffers): Record buffers' mod and read-only flags, and recompute if they change. --- lisp/menu-bar.el | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) 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) -- 2.39.5