all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Juanma Barranquero <lekktu@gmail.com>
To: Kyle Hargraves <pd@krh.me>
Cc: 6147@debbugs.gnu.org
Subject: bug#6147: 23.2; ido-read-buffer regression
Date: Mon, 10 May 2010 01:02:30 +0200	[thread overview]
Message-ID: <AANLkTimYK_sInL7Dc7r3ztAoFG40bxOLhYAznPMPWpJw@mail.gmail.com> (raw)
In-Reply-To: <AANLkTimEUsMUJAExP88Dr59QtcJ4Qm014Mjp7VtjPp4Z@mail.gmail.com>

On Sun, May 9, 2010 at 22:06, Kyle Hargraves <pd@krh.me> wrote:

> This can be reproduced by evaluating:
> (ido-read-buffer "Buffer: " "nonexistent-buffer")
> In 23.2, you will see only a list of your current buffers. In 23.1,
> nonexistent-buffer is the default value.

Yes, it has changed.

> I believe the related commit may be:
> http://github.com/emacsmirror/emacs/commit/e2300713fd5a941bfe1dad338b88f4caf77cc945

Why do you believe that? AFAICS, that commit is related to virtual
buffers, and so it's not on Emacs 23.2.

The "culprit" is this change:

  ------------------------------------------------------------
  revno: 99373
  author: Óscar Fuentes <ofv@wanadoo.es>
  committer: Juanma Barranquero <lekktu@gmail.com>
  branch nick: trunk
  timestamp: Mon 2010-01-18 20:34:55 +0100
  message:
    ido.el: Consider the possibility of buffer names changing after kill-buffer.

which includes this:

        (ido-make-buffer-list): If "default" is a nonexistent
        buffer, ignore it, as per the docstring.


=== modified file 'lisp/ido.el'
--- lisp/ido.el	2010-01-13 08:35:10 +0000
+++ lisp/ido.el	2010-01-18 19:34:55 +0000
@@ -3344,7 +3344,7 @@
     (if ido-temp-list
 	(nconc ido-temp-list ido-current-buffers)
       (setq ido-temp-list ido-current-buffers))
-    (if default
+    (if (and default (buffer-live-p (get-buffer default)))
 	(progn
 	  (setq ido-temp-list
 		(delete default ido-temp-list))


Now, though `ido-make-buffer-list' has not exactly a docstring, but a
comment, it really says:

  ;; [...]  If DEFAULT is non-nil, and corresponds to an existing buffer,
  ;; it is put to the start of the list.

so the use you did of it was relying on undocumented behaviour.

Whether it should work as you prefer or not, I have no comment; but
there has been some recent discussion on emacs-devel about reverting
this patch and replacing it with another fix, by Leo (see thread
titled "PATCH: Fix IDO  interaction with uniquify.el"); so perhaps you
can chime in with your thoughts.

   Juanma






  reply	other threads:[~2010-05-09 23:02 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-09 20:06 bug#6147: 23.2; ido-read-buffer regression Kyle Hargraves
2010-05-09 23:02 ` Juanma Barranquero [this message]
2010-05-09 23:13   ` Kyle Hargraves
2010-08-21 22:34 ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AANLkTimYK_sInL7Dc7r3ztAoFG40bxOLhYAznPMPWpJw@mail.gmail.com \
    --to=lekktu@gmail.com \
    --cc=6147@debbugs.gnu.org \
    --cc=pd@krh.me \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.