Subject: bug#5198: 23.1; find-file tramp ipv6 not a wildcard

From: Kevin Ryde <[email-masked]>
Date: Sun, 13 Dec 2009 11:01:47 +1100

find-file thinks a tramp ipv6 filename like /[::1]:/etc/passwd has a
wildcard and dispatches it to file-expand-wildcards.  Eg.

    M-: (debug-on-entry 'file-expand-wildcards)
    C-x C-f
    /[::1]:/etc/passwd

gives

    file-expand-wildcards("/scp:[::1]:/etc/passwd" t)

I believe it shouldn't do this, ie. should not look at the remote
identifier part when considering wildness.

I struck this nosing around some options and defadvice tramp has for
xemacs remote filename forms, but the ipv6 raw address form tickles it
too.  Tramp thread "defadvice file-expand-wildcards ad-do-it value" at
http://comments.gmane.org/gmane.emacs.tramp/6980

Not sure how bad this is.  It may depend how good file-expand-wildcards
is on remote filenames.  I seem to sometimes get max-specl-depth
exceeded by its recursion, but I don't have a good reproducing for that
yet, and in any case that would be a separate bug.

In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-09-14 on raven, modified by Debian
configured using `configure  '--build=i486-linux-gnu' '--host=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.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_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_AU
  value of $XMODIFIERS: nil
  locale-coding-system: iso-latin-1-unix
  default-enable-multibyte-characters: t