histedit: don't recreate state object
authorDurham Goode <durham@fb.com>
Tue, 17 Feb 2015 19:59:26 -0800
changeset 24131 a2d869e22b5e
parent 24130 03f692eee31d
child 24132 b5898bf7119a
histedit: don't recreate state object Previously, the histedit state object was being recreated during continue/abort. This meant that the locks that were held on the original state object were not available to actions, which meant actions could not release the lock on the repository (like an 'exec' action would need to do). This affected our internal extension that added the 'exec' action.
hgext/histedit.py
--- a/hgext/histedit.py	Sat Jan 10 21:37:42 2015 +0800
+++ b/hgext/histedit.py	Tue Feb 17 19:59:26 2015 -0800
@@ -599,11 +599,9 @@
 
     # rebuild state
     if goal == 'continue':
-        state = histeditstate(repo)
         state.read()
         state = bootstrapcontinue(ui, state, opts)
     elif goal == 'abort':
-        state = histeditstate(repo)
         state.read()
         mapping, tmpnodes, leafs, _ntm = processreplacement(state)
         ui.debug('restore wc to old parent %s\n' % node.short(state.topmost))