histedit: fix --continue and --abort when curses is enabled
I overlooked this when I did the initial import.
Differential Revision: https://phab.mercurial-scm.org/D5540
--- a/hgext/histedit.py Thu Jan 10 21:57:21 2019 +0900
+++ b/hgext/histedit.py Wed Jan 09 18:00:20 2019 -0500
@@ -1593,7 +1593,10 @@
for intentional "edit" command, but also for resolving unexpected
conflicts).
"""
- if ui.interface('histedit') == 'curses':
+ # kludge: _chistedit only works for starting an edit, not aborting
+ # or continuing, so fall back to regular _texthistedit for those
+ # operations.
+ if ui.interface('histedit') == 'curses' and _getgoal(opts) == goalnew:
return _chistedit(ui, repo, *freeargs, **opts)
return _texthistedit(ui, repo, *freeargs, **opts)
--- a/tests/test-histedit-non-commute.t Thu Jan 10 21:57:21 2019 +0900
+++ b/tests/test-histedit-non-commute.t Wed Jan 09 18:00:20 2019 -0500
@@ -161,7 +161,10 @@
warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
Fix up the change (pick 7b4e2f4b7bcd)
(hg histedit --continue to resume)
- $ hg histedit --continue 2>&1 | fixbundle
+We forcibly enable curses here so we can verify that continuing works
+with curses enabled.
+ $ hg histedit --continue --config ui.interactive=true \
+ > --config ui.interface=curses 2>&1 | fixbundle
abort: unresolved merge conflicts (see 'hg help resolve')
This failure is caused by 7b4e2f4b7bcd "e" not rebasing the non commutative