comparison mercurial/copies.py @ 25289:6ac860f700b5

merge with stable
author Matt Mackall <mpm@selenic.com>
date Tue, 26 May 2015 14:52:47 -0500
parents 947771ad5174 708b19c18adf
children cfc24c22454e
comparison
equal deleted inserted replaced
25288:947771ad5174 25289:6ac860f700b5
449 if f1 == f2: 449 if f1 == f2:
450 return f1 # a match 450 return f1 # a match
451 451
452 g1, g2 = f1.ancestors(), f2.ancestors() 452 g1, g2 = f1.ancestors(), f2.ancestors()
453 try: 453 try:
454 f1r, f2r = f1.rev(), f2.rev() 454 f1r, f2r = f1.linkrev(), f2.linkrev()
455 455
456 if f1r is None: 456 if f1r is None:
457 f1 = g1.next() 457 f1 = g1.next()
458 if f2r is None: 458 if f2r is None:
459 f2 = g2.next() 459 f2 = g2.next()
460 460
461 while True: 461 while True:
462 f1r, f2r = f1.rev(), f2.rev() 462 f1r, f2r = f1.linkrev(), f2.linkrev()
463 if f1r > f2r: 463 if f1r > f2r:
464 f1 = g1.next() 464 f1 = g1.next()
465 elif f2r > f1r: 465 elif f2r > f1r:
466 f2 = g2.next() 466 f2 = g2.next()
467 elif f1 == f2: 467 elif f1 == f2:
472 return False 472 return False
473 473
474 of = None 474 of = None
475 seen = set([f]) 475 seen = set([f])
476 for oc in ctx(f, m1[f]).ancestors(): 476 for oc in ctx(f, m1[f]).ancestors():
477 ocr = oc.rev() 477 ocr = oc.linkrev()
478 of = oc.path() 478 of = oc.path()
479 if of in seen: 479 if of in seen:
480 # check limit late - grab last rename before 480 # check limit late - grab last rename before
481 if ocr < limit: 481 if ocr < limit:
482 break 482 break