From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#12081: 24.1; buffer-predicate often not called Date: Sun, 29 Jul 2012 19:08:10 +0200 Message-ID: <50156DFA.8030104@gmx.at> References: <5015411C.30803@gmx.at> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1343581740 27698 80.91.229.3 (29 Jul 2012 17:09:00 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 29 Jul 2012 17:09:00 +0000 (UTC) Cc: 12081@debbugs.gnu.org To: Dave Abrahams Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Jul 29 19:09:00 2012 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1SvWzD-00089Z-2I for geb-bug-gnu-emacs@m.gmane.org; Sun, 29 Jul 2012 19:08:59 +0200 Original-Received: from localhost ([::1]:38275 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SvWzC-00073y-9S for geb-bug-gnu-emacs@m.gmane.org; Sun, 29 Jul 2012 13:08:58 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:52905) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SvWz9-00072U-2O for bug-gnu-emacs@gnu.org; Sun, 29 Jul 2012 13:08:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SvWz8-0003sA-6p for bug-gnu-emacs@gnu.org; Sun, 29 Jul 2012 13:08:55 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:39428) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SvWz8-0003s6-3l for bug-gnu-emacs@gnu.org; Sun, 29 Jul 2012 13:08:54 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1SvX62-00008U-LQ for bug-gnu-emacs@gnu.org; Sun, 29 Jul 2012 13:16:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 29 Jul 2012 17:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 12081 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 12081-submit@debbugs.gnu.org id=B12081.1343582134469 (code B ref 12081); Sun, 29 Jul 2012 17:16:02 +0000 Original-Received: (at 12081) by debbugs.gnu.org; 29 Jul 2012 17:15:34 +0000 Original-Received: from localhost ([127.0.0.1]:48970 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SvX5Z-00007W-NY for submit@debbugs.gnu.org; Sun, 29 Jul 2012 13:15:34 -0400 Original-Received: from mailout-de.gmx.net ([213.165.64.23]:45944) by debbugs.gnu.org with smtp (Exim 4.72) (envelope-from ) id 1SvX5X-00007O-78 for 12081@debbugs.gnu.org; Sun, 29 Jul 2012 13:15:31 -0400 Original-Received: (qmail invoked by alias); 29 Jul 2012 17:08:21 -0000 Original-Received: from 62-47-39-33.adsl.highway.telekom.at (EHLO [62.47.39.33]) [62.47.39.33] by mail.gmx.net (mp031) with SMTP; 29 Jul 2012 19:08:21 +0200 X-Authenticated: #14592706 X-Provags-ID: V01U2FsdGVkX19n/zdYaJ1nO3etv2ynkJoN6yrRKx3m8Q7Do25Dnh 0k42T6tIoiC5im In-Reply-To: X-Y-GMX-Trusted: 0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:62570 Archived-At: >>> 1. Evaluate: >>> >>> (set-frame-parameter >>> (selected-frame) >>> 'buffer-predicate (lambda (b) (message "buffer predicate: %s" b))) >>> 2. `C-x C-f /tmp/xx RET' >>> >>> 3. `C-x C-f /tmp/yy RET' >>> >>> 4. `C-x k RET' >>> >>> 5. `M-: (message "======")' >>> >>> 6. `C-x b *Messages* RET' >>> >>> This shows that the buffer-predicate never called when deciding what >>> buffer to replace yy with. >> Not so here: *Messages* contains the three lines fragment below >> >> ===== >> "=====" >> buffer predicate: *scratch* > > Actually that shows exactly what I claimed. There's a reason I added > step 5. The buffer predicate is not called until we try to switch to > the *Messages* buffer. IMO it should be called when yy is killed. I see. But `kill-buffer' calls `replace-buffer-in-windows' which doesn't call `other-buffer'. Only if the buffer to be killed is still current after that, `kill-buffer' calls `other-buffer'. In the scenario above it is not called. Why is showing the buffer visiting /tmp/xx bad in your scenario? Can you give a scenario where the present behavior really hurts you? In that case we can try to ignore such a buffer in `switch-to-prev-buffer'. martin