[PATCH 11 of 12] rollback: invalidate dirstate through the filecache

Idan Kamara idankk86 at gmail.com
Tue Jan 8 13:10:36 CST 2013


On Tue, Jan 8, 2013 at 8:00 PM, Pierre-Yves David <
pierre-yves.david at logilab.fr> wrote:
>
> On Mon, Dec 17, 2012 at 05:35:36PM +0200, Idan Kamara wrote:
> > # HG changeset patch
> > # User Idan Kamara <idankk86 at gmail.com>
> > # Date 1355568420 -7200
> > # Branch stable
> > # Node ID dfe35839906aaf57d18eeebfc529425de7c0ac85
> > # Parent  9157ffe3d66d41bb7ea3cfa062d775a87731206a
> > rollback: invalidate dirstate through the filecache
> >
> > There's no reason to use invalidate on the dirstate instance since
> > .hg/dirstate
> > was just replaced and the filecache will spot this and reload it.
> >
> > diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
> > --- a/mercurial/localrepo.py
> > +++ b/mercurial/localrepo.py
> > @@ -1009,6 +1009,7 @@
> >                        parents[1] not in self.changelog.nodemap)
> >          if parentgone:
> >              util.rename(self.join('undo.dirstate'),
> > self.join('dirstate'))
> > +            self.invalidatedirstate()
> >              try:
> >                  branch = self.opener.read('undo.branch')
> >                  self.dirstate.setbranch(encoding.tolocal(branch))
>
> What is this this extra call for ? You description only talk about the
> removed call bellow.

Which call? To dirstate.setbranch?

>
> > @@ -1017,7 +1018,6 @@
> >                            'current branch is still \'%s\'\n')
> >                          % self.dirstate.branch())
> >
> > -            self.dirstate.invalidate()
> >              parents = tuple([p.rev() for p in self.parents()])
> >              if len(parents) > 1:
> >                  ui.status(_('working directory now based on '
>
> --
> Pierre-Yves David
>
> http://www.logilab.fr/
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
>
> iEYEARECAAYFAlDsXrkACgkQElczi7p/bN/GCwCeIA4qDTiDvE05FGN1QNrPttEh
> 5xQAnRiaRe8wxojXjvUWMNMnS7e4zEGZ
> =QgJx
> -----END PGP SIGNATURE-----
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20130108/7efe2dcc/attachment.html>


More information about the Mercurial-devel mailing list