mercurial/localrepo.py
changeset 9102 bbc78cb1bf15
parent 9038 93fe89afc611
parent 9093 0b2b269ba3d0
child 9134 a5c060b80082
equal deleted inserted replaced
9092:9aebeea7ac00 9102:bbc78cb1bf15
   471             # starting from tip means fewer passes over reachable
   471             # starting from tip means fewer passes over reachable
   472             while newnodes:
   472             while newnodes:
   473                 latest = newnodes.pop()
   473                 latest = newnodes.pop()
   474                 if latest not in bheads:
   474                 if latest not in bheads:
   475                     continue
   475                     continue
   476                 reachable = self.changelog.reachable(latest, bheads[0])
   476                 reachable = set()
       
   477                 for bh in bheads:
       
   478                     reachable |= self.changelog.reachable(latest, bh)
   477                 bheads = [b for b in bheads if b not in reachable]
   479                 bheads = [b for b in bheads if b not in reachable]
   478                 newbheads.insert(0, latest)
   480                 newbheads.insert(0, latest)
   479             bheads.extend(newbheads)
   481             bheads.extend(newbheads)
   480             partial[branch] = bheads
   482             partial[branch] = bheads
   481 
   483