##// END OF EJS Templates
phases: fix advanceboundary behavior when targetphase !=0...
Pierre-Yves David -
r15695:1b9dcf2e default
parent child Browse files
Show More
@@ -153,6 +153,7 b' def advanceboundary(repo, targetphase, n'
153 in the target phase or kept in a *lower* phase.
153 in the target phase or kept in a *lower* phase.
154
154
155 Simplify boundary to contains phase roots only."""
155 Simplify boundary to contains phase roots only."""
156 delroots = [] # set of root deleted by this path
156 for phase in xrange(targetphase + 1, len(allphases)):
157 for phase in xrange(targetphase + 1, len(allphases)):
157 # filter nodes that are not in a compatible phase already
158 # filter nodes that are not in a compatible phase already
158 # XXX rev phase cache might have been invalidated by a previous loop
159 # XXX rev phase cache might have been invalidated by a previous loop
@@ -170,6 +171,12 b' def advanceboundary(repo, targetphase, n'
170 if '_phaserev' in vars(repo):
171 if '_phaserev' in vars(repo):
171 del repo._phaserev
172 del repo._phaserev
172 repo._dirtyphases = True
173 repo._dirtyphases = True
174 # some roots may need to be declared for lower phases
175 delroots.extend(olds - roots)
176 # declare deleted root in the target phase
177 if targetphase != 0:
178 retractboundary(repo, targetphase, delroots)
179
173
180
174 def retractboundary(repo, targetphase, nodes):
181 def retractboundary(repo, targetphase, nodes):
175 """Set nodes back to a phase changing other nodes phases if necessary.
182 """Set nodes back to a phase changing other nodes phases if necessary.
General Comments 0
You need to be logged in to leave comments. Login now