# HG changeset patch # User Kostia Balytskyi # Date 1455634169 0 # Node ID 2e11f6756d9c1c71ff427dae88dcf5505118a232 # Parent 96f2d50fb9f617884969ce0c90384f46ae8ec842 histedit: unifying the way replacements are computed for abort and success This is a part of a bigger refactoring effort with the ultimate goal of better understanding of how histedit works and fixing issue4800. diff -r 96f2d50fb9f6 -r 2e11f6756d9c hgext/histedit.py --- a/hgext/histedit.py Fri Feb 12 18:39:48 2016 +0900 +++ b/hgext/histedit.py Tue Feb 16 14:49:29 2016 +0000 @@ -1147,7 +1147,7 @@ def _aborthistedit(ui, repo, state): try: state.read() - tmpnodes, leafs = newnodestoabort(state) + __, leafs, tmpnodes, __ = processreplacement(state) ui.debug('restore wc to old parent %s\n' % node.short(state.topmost)) @@ -1386,25 +1386,6 @@ hint=_('use "drop %s" to discard, see also: ' '"hg help -e histedit.config"') % missing[0][:12]) -def newnodestoabort(state): - """process the list of replacements to return - - 1) the list of final node - 2) the list of temporary node - - This is meant to be used on abort as less data are required in this case. - """ - replacements = state.replacements - allsuccs = set() - replaced = set() - for rep in replacements: - allsuccs.update(rep[1]) - replaced.add(rep[0]) - newnodes = allsuccs - replaced - tmpnodes = allsuccs & replaced - return newnodes, tmpnodes - - def processreplacement(state): """process the list of replacements to return