GNU bug report logs - #8799
23.3; iswitchb

Previous Next

Package: emacs;

Reported by: Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk>

Date: Sat, 4 Jun 2011 09:43:02 UTC

Severity: normal

Found in version 23.3

Fixed in version 24.1

Done: Chong Yidong <cyd <at> stupidchicken.com>

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 8799 in the body.
You can then email your comments to 8799 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#8799; Package emacs. (Sat, 04 Jun 2011 09:43:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 04 Jun 2011 09:43:02 GMT) Full text and rfc822 format available.

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

From: Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.3; iswitchb
Date: Sat, 04 Jun 2011 10:42:00 +0100
The following bug report was sent to me by Trevor Spiteri (thank you!).

----------------------------------------------------------------------
The documentation for iswitchb-window-buffer-p states that it should 
return nil if BUFFER is visible in the current frame. Sometimes this 
does not happen.

Suppose I am in a frame with two windows, one for buffer1 and the other 
for buffer2, and I am currently in the window for buffer1. If I type:
C-x b b u f f e r 2 <return>
this works correctly, iswitchb-window-buffer-p returns nil, and 
consequently both windows will show buffer2.

If instead of <return> I use C-j, that is, I am in the window for 
buffer1 and buffer2 is in the other window, and I type:
C-x b b u f f e r 2 C-j
iswitchb-window-buffer-p does not return nil, and consequently not both 
windows will show buffer2, but the window for buffer2 becomes the 
current window.

To fix this, in the defun for iswitchb-window-buffer-p, the line

     (if (memq buffer blist)

should be changed to:

     (if (member buffer blist)

What I guess is happening is that using <return>, buffer is a string 
obtained from the list of buffers, so it is eq to the corresponding 
element in blist. When C-j is used, buffer is taken from user input, and 
is thus not eq to the corresponding element in blist. Although it is not 
eq, it is still equal, so changing memq to member fixes the issue.
----------------------------------------------------------------------




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8799; Package emacs. (Sat, 04 Jun 2011 15:16:02 GMT) Full text and rfc822 format available.

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

From: Deniz Dogan <deniz <at> dogan.se>
To: Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk>
Cc: 8799 <at> debbugs.gnu.org
Subject: Re: bug#8799: 23.3; iswitchb
Date: Sat, 04 Jun 2011 17:14:14 +0200
On 2011-06-04 11:42, Stephen Eglen wrote:
> The following bug report was sent to me by Trevor Spiteri (thank you!).
>
> ----------------------------------------------------------------------
> The documentation for iswitchb-window-buffer-p states that it should
> return nil if BUFFER is visible in the current frame. Sometimes this
> does not happen.
>
> Suppose I am in a frame with two windows, one for buffer1 and the other
> for buffer2, and I am currently in the window for buffer1. If I type:
> C-x b b u f f e r 2<return>
> this works correctly, iswitchb-window-buffer-p returns nil, and
> consequently both windows will show buffer2.
>
> If instead of<return>  I use C-j, that is, I am in the window for
> buffer1 and buffer2 is in the other window, and I type:
> C-x b b u f f e r 2 C-j
> iswitchb-window-buffer-p does not return nil, and consequently not both
> windows will show buffer2, but the window for buffer2 becomes the
> current window.
>
> To fix this, in the defun for iswitchb-window-buffer-p, the line
>
>       (if (memq buffer blist)
>
> should be changed to:
>
>       (if (member buffer blist)
>
> What I guess is happening is that using<return>, buffer is a string
> obtained from the list of buffers, so it is eq to the corresponding
> element in blist. When C-j is used, buffer is taken from user input, and
> is thus not eq to the corresponding element in blist. Although it is not
> eq, it is still equal, so changing memq to member fixes the issue.
> ----------------------------------------------------------------------
>
>
>

I have pushed a fix for this to emacs-trunk, but I afterwards realized I 
should have pushed it to emacs-23.  Could someone knowledgeable fix this 
for me?

Thanks




bug Marked as fixed in versions 24.1. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Sat, 04 Jun 2011 19:15:02 GMT) Full text and rfc822 format available.

Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#8799; Package emacs. (Sun, 21 Aug 2011 03:16:01 GMT) Full text and rfc822 format available.

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

From: Chong Yidong <cyd <at> stupidchicken.com>
To: Deniz Dogan <deniz <at> dogan.se>
Cc: 8799 <at> debbugs.gnu.org, Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk>
Subject: Re: bug#8799: 23.3; iswitchb
Date: Sat, 20 Aug 2011 23:13:08 -0400
Deniz Dogan <deniz <at> dogan.se> writes:

> I have pushed a fix for this to emacs-trunk, but I afterwards realized
> I should have pushed it to emacs-23.  Could someone knowledgeable fix
> this for me?

Sure, done.




bug closed, send any further explanations to 8799 <at> debbugs.gnu.org and Stephen Eglen <S.J.Eglen <at> damtp.cam.ac.uk> Request was from Chong Yidong <cyd <at> stupidchicken.com> to control <at> debbugs.gnu.org. (Sun, 21 Aug 2011 03:16:02 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. (Sun, 18 Sep 2011 11:24:06 GMT) Full text and rfc822 format available.

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

Previous Next


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