Mercurial > public > mercurial-scm > hg
diff hgext/rebase.py @ 11876:1fe94103c6ee
Merge with stable
author | Martin Geisler <mg@lazybytes.net> |
---|---|
date | Sat, 14 Aug 2010 03:30:35 +0200 |
parents | e27a0fa7ba59 00f8e7837668 |
children | c327bfa5e831 |
line wrap: on
line diff
--- a/hgext/rebase.py Sat Aug 14 03:28:45 2010 +0200 +++ b/hgext/rebase.py Sat Aug 14 03:30:35 2010 +0200 @@ -110,7 +110,7 @@ raise util.Abort( _('abort and continue do not allow specifying revisions')) - (originalwd, target, state, collapsef, keepf, + (originalwd, target, state, skipped, collapsef, keepf, keepbranchesf, external) = restorestatus(repo) if abortf: return abort(repo, originalwd, target, state) @@ -419,8 +419,18 @@ else: oldrev, newrev = l.split(':') state[repo[oldrev].rev()] = repo[newrev].rev() + skipped = set() + # recompute the set of skipped revs + if not collapse: + seen = set([target]) + for old, new in sorted(state.items()): + if new != nullrev and new in seen: + skipped.add(old) + seen.add(new) + repo.ui.debug('computed skipped revs: %s\n' % skipped) repo.ui.debug('rebase status resumed\n') - return originalwd, target, state, collapse, keep, keepbranches, external + return (originalwd, target, state, skipped, + collapse, keep, keepbranches, external) except IOError, err: if err.errno != errno.ENOENT: raise