Subject: Re: bug#8184: 23.1.90; `menu-bar-non-minibuffer-window-p' error in calls to `kill-this-buffer'

From: martin rudalics <[email-masked]>
Date: Sun, 06 Mar 2011 19:19:13 +0100

> ??? This function is bound to the "Close" item in the "File" menu, so
 > it is definitely related to the menu bar.

Am I right that the time for executing `kill-this-buffer-enabled-p' is
currently always proportional to the number of live buffers?  In that
case I'd rewrite his function as

(defun kill-this-buffer-enabled-p ()
   (or (not (menu-bar-non-minibuffer-window-p))
       (let (found-1)
	(catch 'found-2
	  (dolist (buffer (buffer-list))
	    (unless (string-match-p "^ " (buffer-name buffer))
	      (if (not found-1)
		  (setq found-1 t)
		(throw 'found-2 t))))))))

martin