diff -r 4ae3ba9e4d7a -r b6081c2c4647 mercurial/commands.py --- a/mercurial/commands.py Sat May 12 00:19:30 2012 +0200 +++ b/mercurial/commands.py Sat May 12 00:24:07 2012 +0200 @@ -4378,7 +4378,7 @@ nodes = [ctx.node() for ctx in repo.set('%ld', revs)] if not nodes: raise util.Abort(_('empty revision set')) - olddata = repo._phaserev[:] + olddata = repo._phasecache.getphaserevs(repo)[:] phases.advanceboundary(repo, targetphase, nodes) if opts['force']: phases.retractboundary(repo, targetphase, nodes) @@ -4386,7 +4386,7 @@ lock.release() if olddata is not None: changes = 0 - newdata = repo._phaserev + newdata = repo._phasecache.getphaserevs(repo) changes = sum(o != newdata[i] for i, o in enumerate(olddata)) rejected = [n for n in nodes if newdata[repo[n].rev()] < targetphase]