bug#4050: 23.1.50; iswitchb virtual buffers don't play well with symlinks

Tassilo Horn <[email protected]>
Newsgroups gmane.emacs.bugs,gmane.emacs.pretest.bugs
Message-ID <[email protected]>
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email protected] mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

I use iswitchb and the virtual buffer feature
(iswitchb-use-virtual-buffers set to t).  It's a great feature, but it
doesn't play well with symlinks.

I keep all my config files in a git repository.  For example, my
~/.emacs is a symlink to ~/repos/configs/dot-emacs.el.  Now I fire up
iswithb and type ".emacs".  There's no such buffer, so it shows the
virtual buffer ".emacs" and I hit RET.

Now I'm queried:

  Symbolic link to Git-controlled source file; follow link? (y or n) 

That's ok, and I say yes.  The echo area says:

  Followed link to /home/horn/repos/configs/dot-emacs.el

Also, the file is opened, and a buffer dot-emacs.el exists now.  But
then I get another query:

  No buffer matching `.emacs', create one? (y or n) 

When I say yes, an empty .emacs buffer is created.  When I say no, no
new buffer is created, but I stay in the buffer I invoked iswitchb
from.  The dot-emacs.el buffer is open, but not switched to.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/share/emacs/23.1.50/etc/DEBUG for instructions.


In GNU Emacs 23.1.50.1 (x86_64-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-08-02 on localhost
Windowing system distributor `The X.Org Foundation', version 11.0.10603000
configured using `configure  '--prefix=/usr' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '--build=x86_64-pc-linux-gnu' '--program-suffix=-emacs-23-cvs' '--infodir=/usr/share/info/emacs-23-cvs' '--with-sound' '--with-x' '--with-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--with-xft' '--with-libotf' '--with-m17n-flt' '--with-x-toolkit=gtk' '--without-hesiod' '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu' 'CFLAGS=-march=core2 -O2 -pipe' 'LDFLAGS=-Wl,-z,now''

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

Major mode: Group

Minor modes in effect:
  hl-line-mode: t
  gnus-topic-mode: t
  gnus-undo-mode: t
  display-time-mode: t
  yas/global-mode: t
  yas/minor-mode: t
  recentf-mode: t
  iswitchb-mode: t
  window-number-meta-mode: t
  window-number-mode: t
  exec-abbrev-cmd-mode: t
  savehist-mode: t
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
n SPC n e w l i n e s SPC i n SPC t h e SPC n a m e 
. SPC SPC M-q <down> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <right> <right> 
<right> <right> <right> <right> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> M-q <down> <down> 
<down> <down> <down> <down> C-a C-SPC <down> <down> 
<down> <down> <down> <down> <down> C-c M-m <up> <up> 
<up> <up> <up> <up> <up> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <up> <return> I SPC t h i n k SPC t h a t SPC 
C-h f d i r e <tab> d <tab> - e <tab> <tab> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> m o <tab> v <tab> e n <tab> 
<return> b a s i c a l l y SPC t <M-backspace> <M-backspace> 
` d i r e d - m o r <backspace> v e l <backspace> - 
t o - e n M-/ ' SPC h a s SPC t o SPC b e SPC a d a 
p t e d SPC t o SPC c o n s i d e r SPC t h o s e SPC 
f i l e n a m e s , SPC t o o . M-x t t s s <return> 
C-c C-c c <return> SPC c l s C-x C-b q C-x b . e m 
<return> y n C-x b d o <right> C-s <return> C-x k <return> 
M-x r e b <return>

Recent messages:
(No changes need to be saved)
20090805T210311.609> Saving /home/horn/.newsrc.eld...
Saving file /home/horn/.newsrc.eld...
Wrote /home/horn/.newsrc.eld
20090805T210311.661> Saving /home/horn/.newsrc.eld...done
Symbolic link to Git-controlled source file; follow link? (y or n) 
Followed link to /home/horn/repos/configs/dot-emacs.el
No buffer matching `.emacs', create one? (y or n) 
no buffer matching `.emacs'
call-interactively: End of buffer

Load-path shadows:
/usr/share/emacs/site-lisp/ruby-mode/ruby-mode hides /usr/share/emacs/23.1.50/lisp/progmodes/ruby-mode
~/repos/el/org-mode/lisp/org-bbdb hides /usr/share/emacs/23.1.50/lisp/org/org-bbdb
~/repos/el/org-mode/lisp/org-colview hides /usr/share/emacs/23.1.50/lisp/org/org-colview
~/repos/el/org-mode/lisp/org-footnote hides /usr/share/emacs/23.1.50/lisp/org/org-footnote
~/repos/el/org-mode/lisp/org-compat hides /usr/share/emacs/23.1.50/lisp/org/org-compat
~/repos/el/org-mode/lisp/org-clock hides /usr/share/emacs/23.1.50/lisp/org/org-clock
~/repos/el/org-mode/lisp/org-bibtex hides /usr/share/emacs/23.1.50/lisp/org/org-bibtex
~/repos/el/org-mode/lisp/org-faces hides /usr/share/emacs/23.1.50/lisp/org/org-faces
~/repos/el/org-mode/lisp/org-timer hides /usr/share/emacs/23.1.50/lisp/org/org-timer
~/repos/el/org-mode/lisp/org-vm hides /usr/share/emacs/23.1.50/lisp/org/org-vm
~/repos/el/org-mode/lisp/org-list hides /usr/share/emacs/23.1.50/lisp/org/org-list
~/repos/el/org-mode/lisp/org-gnus hides /usr/share/emacs/23.1.50/lisp/org/org-gnus
~/repos/el/org-mode/lisp/org-exp hides /usr/share/emacs/23.1.50/lisp/org/org-exp
~/repos/el/org-mode/lisp/org-wl hides /usr/share/emacs/23.1.50/lisp/org/org-wl
~/repos/el/org-mode/lisp/org-plot hides /usr/share/emacs/23.1.50/lisp/org/org-plot
~/repos/el/org-mode/lisp/org-w3m hides /usr/share/emacs/23.1.50/lisp/org/org-w3m
~/repos/el/org-mode/lisp/org-agenda hides /usr/share/emacs/23.1.50/lisp/org/org-agenda
~/repos/el/org-mode/lisp/org-archive hides /usr/share/emacs/23.1.50/lisp/org/org-archive
~/repos/el/org-mode/lisp/org-attach hides /usr/share/emacs/23.1.50/lisp/org/org-attach
~/repos/el/org-mode/lisp/org-mhe hides /usr/share/emacs/23.1.50/lisp/org/org-mhe
~/repos/el/org-mode/lisp/org-irc hides /usr/share/emacs/23.1.50/lisp/org/org-irc
~/repos/el/org-mode/lisp/org-table hides /usr/share/emacs/23.1.50/lisp/org/org-table
~/repos/el/org-mode/lisp/org-info hides /usr/share/emacs/23.1.50/lisp/org/org-info
~/repos/el/org-mode/lisp/org-jsinfo hides /usr/share/emacs/23.1.50/lisp/org/org-jsinfo
~/repos/el/org-mode/lisp/org-id hides /usr/share/emacs/23.1.50/lisp/org/org-id
~/repos/el/org-mode/lisp/org-publish hides /usr/share/emacs/23.1.50/lisp/org/org-publish
~/repos/el/org-mode/lisp/org-mew hides /usr/share/emacs/23.1.50/lisp/org/org-mew
~/repos/el/org-mode/lisp/org-remember hides /usr/share/emacs/23.1.50/lisp/org/org-remember
~/repos/el/org-mode/lisp/org-macs hides /usr/share/emacs/23.1.50/lisp/org/org-macs
~/repos/el/org-mode/lisp/org-mouse hides /usr/share/emacs/23.1.50/lisp/org/org-mouse
~/repos/el/org-mode/lisp/org-install hides /usr/share/emacs/23.1.50/lisp/org/org-install
~/repos/el/org-mode/lisp/org hides /usr/share/emacs/23.1.50/lisp/org/org
~/repos/el/org-mode/lisp/org-rmail hides /usr/share/emacs/23.1.50/lisp/org/org-rmail
~/repos/el/org-mode/lisp/org-mac-message hides /usr/share/emacs/23.1.50/lisp/org/org-mac-message
~/elisp/elp hides /usr/share/emacs/23.1.50/lisp/emacs-lisp/elp
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.