equal
deleted
inserted
replaced
298 # Copied on both sides: mark as copy from p1 side |
298 # Copied on both sides: mark as copy from p1 side |
299 copies[dst] = copies1[dst] |
299 copies[dst] = copies1[dst] |
300 else: |
300 else: |
301 copies = copies1 |
301 copies = copies1 |
302 if r == b.rev(): |
302 if r == b.rev(): |
|
303 _filter(a, b, copies) |
303 return copies |
304 return copies |
304 for c in children[r]: |
305 for c in children[r]: |
305 childctx = repo[c] |
306 childctx = repo[c] |
306 if r == childctx.p1().rev(): |
307 if r == childctx.p1().rev(): |
307 parent = 1 |
308 parent = 1 |
311 parent = 2 |
312 parent = 2 |
312 childcopies = childctx.p2copies() |
313 childcopies = childctx.p2copies() |
313 if not match.always(): |
314 if not match.always(): |
314 childcopies = {dst: src for dst, src in childcopies.items() |
315 childcopies = {dst: src for dst, src in childcopies.items() |
315 if match(dst)} |
316 if match(dst)} |
316 childcopies = _chainandfilter(a, childctx, copies, childcopies) |
317 childcopies = _chain(copies, childcopies) |
|
318 for f in childctx.filesremoved(): |
|
319 if f in childcopies: |
|
320 del childcopies[f] |
317 heapq.heappush(work, (c, parent, childcopies)) |
321 heapq.heappush(work, (c, parent, childcopies)) |
318 assert False |
322 assert False |
319 |
323 |
320 def _forwardcopies(a, b, match=None): |
324 def _forwardcopies(a, b, match=None): |
321 """find {dst@b: src@a} copy mapping where a is an ancestor of b""" |
325 """find {dst@b: src@a} copy mapping where a is an ancestor of b""" |