[Bug 3643] New: scmutil.opener/vfs no longer handles windows absolute paths correctly

bugzilla-daemon at bz.selenic.com bugzilla-daemon at bz.selenic.com
Sat Sep 29 07:46:56 CDT 2012


http://bz.selenic.com/show_bug.cgi?id=3643

          Priority: normal
            Bug ID: 3643
                CC: mercurial-devel at selenic.com
          Assignee: bugzilla at selenic.com
           Summary: scmutil.opener/vfs no longer handles windows absolute
                    paths correctly
          Severity: bug
    Classification: Unclassified
                OS: Mac OS
          Reporter: patrick at mezard.eu
          Hardware: PC
            Status: UNCONFIRMED
           Version: unspecified
         Component: Mercurial
           Product: Mercurial

The problem was introduced by:

  changeset:   18696:83785bb56062
  user:        Bryan O'Sullivan <bryano at fb.com>
  date:        Fri Sep 14 12:07:33 2012 -0700
  summary:     scmutil: make join cheaper

and first reported here:

  http://selenic.com/pipermail/mercurial-devel/2012-September/044278.html

I agree it is not easy to produce an actual bug since most user supplied paths
are put in match objects and resolved against manifest entries, but still:

  C:\dev\mercurial\hg-crew>hg debugindex
c:\dev\mercurial\hg-crew\.hg\store\data\.hgignore.i
  abort:
C:\dev\mercurial\hg-crew\c:\dev\mercurial\hg-crew\.hg\store\data\.hgignore.i:
The filename, directory name, or volume label syntax is incorrect

This works fine with the changeset backed out. This is also the cause of
test-contrib.t failure on Windows:

 
http://hgbuildbot.kublai.com/builders/Windows%202008%20R2%20hg%20tests/builds/225/steps/run-tests.py%20(python2.6)/logs/stdio

I suggest we backout the changeset until a better version is written, or we
decide opener.join does not handle absolute paths in which case it can be
simplified further.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list