[PATCH STABLE] cmdutil: warnings not issued in cat if subrepopath overlaps

Yuya Nishihara yuya at tcha.org
Wed Jul 27 11:20:49 EDT 2016


On Wed, 27 Jul 2016 14:38:39 +0100, Jun Wu wrote:
> Excerpts from Hannes Oldenburg's message of 2016-07-27 08:56:42 +0000:
> > # HG changeset patch
> > # User Hannes Oldenburg <hannes.christian.oldenburg at gmail.com>
> > # Date 1469608734 0
> > #      Wed Jul 27 08:38:54 2016 +0000
> > # Branch stable
> > # Node ID 1cb0ce20c615d848b7ca50fb23096cdc27d4b6d1
> > # Parent  6217180f9ab8c61320ea3826591960415779282e
> > cmdutil: warnings not issued in cat if subrepopath overlaps
> > 
> > Previously a subrepository "sub" would cause no warnings to
> > be issued for a file "subnot/a", if it's not present in the
> > corresponding changeset when calling:
> > 
> > hg cat subnot/a
> > 
> > diff -r 6217180f9ab8 -r 1cb0ce20c615 mercurial/cmdutil.py
> > --- a/mercurial/cmdutil.py    Mon Jul 25 12:59:52 2016 +0800
> > +++ b/mercurial/cmdutil.py    Wed Jul 27 08:38:54 2016 +0000
> > @@ -2584,7 +2584,7 @@
> >      # Don't warn about "missing" files that are really in subrepos
> >      def badfn(path, msg):
> >          for subpath in ctx.substate:
> > -            if path.startswith(subpath):
> > +            if path.startswith(subpath + '/'):
> 
> Should we use os.path.sep here?

A path here appears to be normalized. If not, using subpath would be wrong
anyway.


More information about the Mercurial-devel mailing list