# HG changeset patch # User Martin von Zweigbergk # Date 2018-03-09 20:48:00 # Node ID 36de8a3c429c58050ff49e304d450b07cf9f93ca # Parent cc2bfc7d53620840733249fb41f5c08a018942f1 rebase: use configoverride context manager for ui.forcemerge Differential Revision: https://phab.mercurial-scm.org/D2761 diff --git a/hgext/rebase.py b/hgext/rebase.py --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -481,9 +481,8 @@ class rebaseruntime(object): if len(repo[None].parents()) == 2: repo.ui.debug('resuming interrupted rebase\n') else: - try: - ui.setconfig('ui', 'forcemerge', opts.get('tool', ''), - 'rebase') + overrides = {('ui', 'forcemerge'): opts.get('tool', '')} + with ui.configoverride(overrides, 'rebase'): stats = rebasenode(repo, rev, p1, base, self.collapsef, dest, wctx=self.wctx) if stats and stats[3] > 0: @@ -493,8 +492,6 @@ class rebaseruntime(object): raise error.InterventionRequired( _('unresolved conflicts (see hg ' 'resolve, then hg rebase --continue)')) - finally: - ui.setconfig('ui', 'forcemerge', '', 'rebase') if not self.collapsef: merging = p2 != nullrev editform = cmdutil.mergeeditform(merging, 'rebase')