histedit: do not stay on a cleaned nodes on abort
There is case where nodes are neither in tmpnodes nor leaf but still get
removed. For example, if you used the "edit" action, made a commit and run
--abort. The commit you made is not tracked by histedit, yet it will likely be
cleaned up with its parent. The commit may not tracked because no replacements
computations are done in the --abort case.
--- a/hgext/histedit.py Mon Aug 03 06:11:45 2015 -0700
+++ b/hgext/histedit.py Mon Aug 03 06:13:05 2015 -0700
@@ -791,7 +791,7 @@
os.remove(backupfile)
# check whether we should update away
- if repo.unfiltered().revs('parents() and (%n or %ln)',
+ if repo.unfiltered().revs('parents() and (%n or %ln::)',
state.parentctxnode, leafs | tmpnodes):
hg.clean(repo, state.topmost)
cleanupnode(ui, repo, 'created', tmpnodes)