# HG changeset patch # User Martin von Zweigbergk # Date 1529016377 25200 # Node ID ff9694ea385275c6b1778188357727f331f48dba # Parent 7e34fc78701acf33588252cb83f4992f435eda03 resolve: use context manager for config override Differential Revision: https://phab.mercurial-scm.org/D3740 diff -r 7e34fc78701a -r ff9694ea3852 mercurial/commands.py --- a/mercurial/commands.py Thu Jun 14 15:45:45 2018 -0700 +++ b/mercurial/commands.py Thu Jun 14 15:46:17 2018 -0700 @@ -4553,15 +4553,14 @@ try: # preresolve file - ui.setconfig('ui', 'forcemerge', opts.get('tool', ''), - 'resolve') - complete, r = ms.preresolve(f, wctx) + overrides = {('ui', 'forcemerge'): opts.get('tool', '')} + with ui.configoverride(overrides, 'resolve'): + complete, r = ms.preresolve(f, wctx) if not complete: tocomplete.append(f) elif r: ret = 1 finally: - ui.setconfig('ui', 'forcemerge', '', 'resolve') ms.commit() # replace filemerge's .orig file with our resolve file, but only @@ -4577,13 +4576,12 @@ for f in tocomplete: try: # resolve file - ui.setconfig('ui', 'forcemerge', opts.get('tool', ''), - 'resolve') - r = ms.resolve(f, wctx) + overrides = {('ui', 'forcemerge'): opts.get('tool', '')} + with ui.configoverride(overrides, 'resolve'): + r = ms.resolve(f, wctx) if r: ret = 1 finally: - ui.setconfig('ui', 'forcemerge', '', 'resolve') ms.commit() # replace filemerge's .orig file with our resolve file