diff -r 73c4b3d0c711 -r 4252d9f08d7e mercurial/phases.py --- a/mercurial/phases.py Wed Jan 18 14:50:17 2012 +0100 +++ b/mercurial/phases.py Wed Jan 18 16:46:15 2012 +0100 @@ -141,8 +141,9 @@ """ if phaseroots is None: phaseroots = repo._phaseroots + nodemap = repo.changelog.nodemap # to filter unknown nodes for phase, nodes in enumerate(phaseroots): - missing = [node for node in nodes if node not in repo] + missing = [node for node in nodes if node not in nodemap] if missing: for mnode in missing: msg = _('Removing unknown node %(n)s from %(p)i-phase boundary') @@ -266,7 +267,7 @@ """ # build list from dictionary draftroots = [] - nm = repo.changelog.nodemap # to filter unknown node + nodemap = repo.changelog.nodemap # to filter unknown nodes for nhex, phase in roots.iteritems(): if nhex == 'publishing': # ignore data related to publish option continue @@ -277,7 +278,7 @@ msg = _('ignoring inconsistense public root from remote: %s') repo.ui.warn(msg, nhex) elif phase == 1: - if node in nm: + if node in nodemap: draftroots.append(node) else: msg = _('ignoring unexpected root from remote: %i %s')