# HG changeset patch # User Michael Bolin # Date 2017-09-01 20:28:26 # Node ID 3c82b14d28385883b696e8f97586886873f172ff # Parent 24ce7b0edaf93876c5f004ba786424b0f38fd7dc editor: file created for diff action should have .diff suffix This is a follow-up to https://phab.mercurial-scm.org/D464 (6e6452bc441d) that introduced the new file extension behavior. It erroneously changed `.diff` to `.diff.hg.txt`. Test Plan: Verified `make tests` passes, particularly `test-editor-filename.t`. Differential Revision: https://phab.mercurial-scm.org/D607 diff --git a/mercurial/ui.py b/mercurial/ui.py --- a/mercurial/ui.py +++ b/mercurial/ui.py @@ -1361,7 +1361,9 @@ class ui(object): extra_defaults.update(extra) extra = extra_defaults - if action: + if action == 'diff': + suffix = '.diff' + elif action: suffix = '.%s.hg.txt' % action else: suffix = extra['suffix'] diff --git a/tests/test-editor-filename.t b/tests/test-editor-filename.t --- a/tests/test-editor-filename.t +++ b/tests/test-editor-filename.t @@ -33,3 +33,31 @@ Verify that the path for a histedit edit *.histedit.hg.txt (glob) abort: edit failed: editor.sh exited with status 1 [255] + +Verify that when performing an action that has the side-effect of creating an +editor for a diff, the file ends in .diff. + + $ echo 1 > one + $ echo 2 > two + $ hg add + adding one + adding two + $ hg commit --interactive --config ui.interactive=true --config ui.interface=text << EOF + > y + > e + > q + > EOF + diff --git a/one b/one + new file mode 100644 + examine changes to 'one'? [Ynesfdaq?] y + + @@ -0,0 +1,1 @@ + +1 + record change 1/2 to 'one'? [Ynesfdaq?] e + + *.diff (glob) + editor exited with exit code 1 + record change 1/2 to 'one'? [Ynesfdaq?] q + + abort: user quit + [255]