GNU bug report logs - #7645
23.2; ido commands failed to execute if there is some killed buffer

Previous Next

Package: emacs;

Reported by: Abaw <abawwu <at> gmail.com>

Date: Wed, 15 Dec 2010 06:26:01 UTC

Severity: normal

Tags: moreinfo, unreproducible

Found in version 23.2

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 7645 in the body.
You can then email your comments to 7645 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 15 Dec 2010 06:26:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Abaw <abawwu <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 15 Dec 2010 06:26:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Abaw <abawwu <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.2; ido commands failed to execute if there is some killed buffer
Date: Wed, 15 Dec 2010 14:07:21 +0800
[Message part 1 (text/plain, inline)]
Hi maintainers,

ido commands that finally calls ``ido-make-buffer-list'' would fail to
execute if there is some killed buffer returned by
``buffer-list''. Because (buffer-name a-killed-buffer) will return nil,
``ido-ignore-item-p'' fail to treat it as a stream. My solution is to
return non-nil if name passed to ``ido-ignore-item-p'' is nil.

The attachment is the patch I made for ido.el.


In GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.0)
of 2010-08-15 on raven, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.60900000
configured using `configure '--build' 'i486-linux-gnu' '--build'
'i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib'
'--libexecdir=/usr/lib' '--localstatedir=/var/lib'
'--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes'
'--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.2/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.2/leim'
'--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars'
'build_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g'
'CPPFLAGS=''

Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default enable-multibyte-characters: t
[Message part 2 (text/html, inline)]
[ido.el.patch (application/octet-stream, attachment)]

Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 15 Dec 2010 08:24:02 GMT) Full text and rfc822 format available.

Message #8 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Abaw <abawwu <at> gmail.com>
Cc: 7645 <at> debbugs.gnu.org
Subject: Re: bug#7645: 23.2;
	ido commands failed to execute if there is some killed buffer
Date: Wed, 15 Dec 2010 03:29:13 -0500
Abaw wrote:

> ido commands that finally calls ``ido-make-buffer-list'' would fail
> to execute if there is some killed buffer returned by ``buffer-list''.

But buffer-list doesn't return killed buffers:
"Return a list of all existing live buffers."

?




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 15 Dec 2010 15:26:02 GMT) Full text and rfc822 format available.

Message #11 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: Abaw <abawwu <at> gmail.com>
To: 7645 <at> debbugs.gnu.org
Subject: Fwd: bug#7645: 23.2; ido commands failed to execute if there is some
	killed buffer
Date: Wed, 15 Dec 2010 23:31:37 +0800
[Message part 1 (text/plain, inline)]
---------- Forwarded message ----------
From: Abaw <abawwu <at> gmail.com>
Date: Wed, Dec 15, 2010 at 11:29 PM
Subject: Re: bug#7645: 23.2; ido commands failed to execute if there is some
killed buffer
To: Glenn Morris <rgm <at> gnu.org>


Hi,
It rarely(less than 1 time per month) returns killed buffers, but it does.
Maybe some of my used packages referenced the killed buffers.

The elisp reference manual has mentioned about this behavior:
http://www.gnu.org/software/emacs/manual/html_node/elisp/Killing-Buffers.html#Killing-Buffers

The buffer object for the buffer that has been killed remains in existence
as long as anything refers to it, but it is specially marked so that you
cannot make it current or display it. Killed buffers retain their identity,
however; if you kill two distinct buffers, they remain distinct according
to eq although both are dead.
Sincerely yours,
Ken.

On Wed, Dec 15, 2010 at 4:29 PM, Glenn Morris <rgm <at> gnu.org> wrote:

> Abaw wrote:
>
> > ido commands that finally calls ``ido-make-buffer-list'' would fail
> > to execute if there is some killed buffer returned by ``buffer-list''.
>
> But buffer-list doesn't return killed buffers:
> "Return a list of all existing live buffers."
>
> ?
>
[Message part 2 (text/html, inline)]

Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Sat, 22 Jan 2011 19:56:02 GMT) Full text and rfc822 format available.

Message #14 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: Abaw <abawwu <at> gmail.com>
Cc: 7645 <at> debbugs.gnu.org
Subject: Re: bug#7645: Fwd: bug#7645: 23.2;
	ido commands failed to execute if there is some killed buffer
Date: Sat, 22 Jan 2011 15:03:01 -0500
Abaw <abawwu <at> gmail.com> writes:

> [buffer-list] rarely(less than 1 time per month) returns killed
> buffers, but it does.  Maybe some of my used packages referenced the
> killed buffers.

If so, that would be a bug.  `buffer-list' returns the contents of a
list of live buffers maintained internally by Emacs.  When a buffer is
killed, it should be simultaneously removed from this internal list.

> The elisp reference manual has mentioned about this behavior:
> http://www.gnu.org/software/emacs/manual/html_node/elisp/Killing-Buffers.
> html#Killing-Buffers
>
> The buffer object for the buffer that has been killed remains in
> existence as long as anything refers to it, but it is specially marked
> so that you cannot make it current or display it. Killed buffers
> retain their identity, however; if you kill two distinct buffers, they
> remain distinct according to eq although both are dead.

This is a separate issue.  The buffer object remains in existence, but
it should always be removed from the list of live buffers.

Do you happen to have a Lisp backtrace of this error?




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 27 Apr 2011 08:29:02 GMT) Full text and rfc822 format available.

Message #17 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: Leo <sdl.web <at> gmail.com>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: Abaw <abawwu <at> gmail.com>, 7645 <at> debbugs.gnu.org
Subject: Re: bug#7645: 23.2;
	ido commands failed to execute if there is some killed buffer
Date: Wed, 27 Apr 2011 16:28:04 +0800
On 2011-01-23 04:03 +0800, Chong Yidong wrote:
> Abaw <abawwu <at> gmail.com> writes:
>
>> [buffer-list] rarely(less than 1 time per month) returns killed
>> buffers, but it does.  Maybe some of my used packages referenced the
>> killed buffers.
>
> If so, that would be a bug.  `buffer-list' returns the contents of a
> list of live buffers maintained internally by Emacs.  When a buffer is
> killed, it should be simultaneously removed from this internal list.

I have seen this bug too due to (buffer-list t) returning killed
buffers. Unfortunately this isn't easy to reproduce.

Leo




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 27 Apr 2011 13:00:04 GMT) Full text and rfc822 format available.

Message #20 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: "Drew Adams" <drew.adams <at> oracle.com>
To: "'Leo'" <sdl.web <at> gmail.com>, "'Chong Yidong'" <cyd <at> stupidchicken.com>
Cc: 'Abaw' <abawwu <at> gmail.com>, 7645 <at> debbugs.gnu.org
Subject: RE: bug#7645: 23.2;
	ido commands failed to execute if there is some killed buffer
Date: Wed, 27 Apr 2011 05:58:42 -0700
> >> [buffer-list] rarely(less than 1 time per month) returns killed
> >> buffers, but it does.  Maybe some of my used packages 
> >> referenced the killed buffers.
> 
> I have seen this bug too due to (buffer-list t) returning killed
> buffers. Unfortunately this isn't easy to reproduce.

1+

Happens to me too, and it's not so rare as once a month.
This has been mentioned in other bug threads, BTW.
Haven't seen a recipe yet.





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7645; Package emacs. (Wed, 27 Apr 2011 13:36:02 GMT) Full text and rfc822 format available.

Message #23 received at 7645 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Leo <sdl.web <at> gmail.com>
Cc: Chong Yidong <cyd <at> stupidchicken.com>, 7645 <at> debbugs.gnu.org,
	Abaw <abawwu <at> gmail.com>
Subject: Re: bug#7645: 23.2;	ido commands failed to execute if there is some
	killed buffer
Date: Wed, 27 Apr 2011 15:35:04 +0200
> I have seen this bug too due to (buffer-list t) returning killed
> buffers. Unfortunately this isn't easy to reproduce.

Calling `buffer-list' with argument t is like calling it with no
argument at all ;-)

BTW, I'm running all my Emacsen for more than a month with

(defun check-buffer-list ()
  (dolist (buffer (buffer-list))
    (unless (buffer-live-p buffer)
      (message "Dead buffer %s" buffer))))

(add-hook 'post-command-hook 'check-buffer-list t)

and didn't find anything so far.  So please check whether the behavior
you observe might be caused by some other function.

martin




bug closed, send any further explanations to 7645 <at> debbugs.gnu.org and Abaw <abawwu <at> gmail.com> Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Thu, 07 Feb 2013 20:16:03 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 08 Mar 2013 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 12 years and 107 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.