mercurial/revset.py
changeset 49510 e02dcc625171
parent 49447 6dbe74669eba
child 49511 117dcc4a0e67
equal deleted inserted replaced
49509:946c023212b8 49510:e02dcc625171
  2340     """Changesets in set with no parent changeset in set."""
  2340     """Changesets in set with no parent changeset in set."""
  2341     s = getset(repo, fullreposet(repo), x)
  2341     s = getset(repo, fullreposet(repo), x)
  2342     parents = repo.changelog.parentrevs
  2342     parents = repo.changelog.parentrevs
  2343 
  2343 
  2344     def filter(r):
  2344     def filter(r):
  2345         for p in parents(r):
  2345         try:
  2346             if 0 <= p and p in s:
  2346             for p in parents(r):
  2347                 return False
  2347                 if 0 <= p and p in s:
       
  2348                     return False
       
  2349         except error.WdirUnsupported:
       
  2350             for p in repo[None].parents():
       
  2351                 if p.rev() in s:
       
  2352                     return False
  2348         return True
  2353         return True
  2349 
  2354 
  2350     return subset & s.filter(filter, condrepr=b'<roots>')
  2355     return subset & s.filter(filter, condrepr=b'<roots>')
  2351 
  2356 
  2352 
  2357