# HG changeset patch # User Pierre-Yves David # Date 1409356328 -7200 # Node ID 67588e47522a1730c63dea0d3e33e8b93ba170d2 # Parent 813c6855b97f643be5842982fb75c66a5e5e24ae revert: cache working context in a variable During the silicon age, humans on planet Earth discovered the use of variables. This marvelous invention let them improve both code readability and performance. diff -r 813c6855b97f -r 67588e47522a mercurial/cmdutil.py --- a/mercurial/cmdutil.py Wed Sep 10 14:42:52 2014 +0100 +++ b/mercurial/cmdutil.py Sat Aug 30 01:52:08 2014 +0200 @@ -2541,6 +2541,7 @@ needdata = ('revert', 'add', 'undelete') _revertprefetch(repo, ctx, *[actions[name][0] for name in needdata]) + wctx = repo[None] for abs, (rel, exact) in sorted(names.items()): # target file to be touch on disk (relative to cwd) target = repo.wjoin(abs) @@ -2553,7 +2554,7 @@ if xlist is not None: xlist.append(abs) if (dobackup and os.path.lexists(target) - and repo[None][abs].cmp(ctx[abs])): + and wctx[abs].cmp(ctx[abs])): bakname = "%s.orig" % rel ui.note(_('saving current version of %s as %s\n') % (rel, bakname))