Mercurial > hg-stable
changeset 10347:7516716e56dc
commands: move inactive/closed out so they can have more effect
author | Dirkjan Ochtman <dirkjan@ochtman.nl> |
---|---|
date | Sat, 06 Feb 2010 19:33:33 +0100 |
parents | e2db50cae6e6 |
children | 0fc5222c0951 |
files | mercurial/commands.py |
diffstat | 1 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Sat Feb 06 19:33:28 2010 +0100 +++ b/mercurial/commands.py Sat Feb 06 19:33:33 2010 +0100 @@ -1417,24 +1417,26 @@ start = None closed = opts.get('closed') - hideinactive, _heads = opts.get('active'), None if not branchrevs: heads = repo.heads(start) else: - if hideinactive: - dagheads = repo.heads(start) decode, encode = encoding.fromlocal, encoding.tolocal branches = set(repo[decode(br)].branch() for br in branchrevs) heads = [] for b in branches: - bheads = repo.branchheads(b, start, closed=closed) - if hideinactive: - bheads = [bhead for bhead in bheads if bhead in dagheads] + bheads = repo.branchheads(b, start, True) heads.extend(bheads) + if not opts.get('closed'): + heads = [h for h in heads if not repo[h].extra().get('close')] + + if opts.get('active'): + dagheads = repo.heads(start) + heads = [h for h in heads if h in dagheads] + haveheads = set(repo[h].branch() for h in heads) if branches - haveheads: headless = ', '.join(encode(b) for b in branches - haveheads)