# HG changeset patch # User Pierre-Yves David # Date 2012-10-24 13:37:32 # Node ID 034e55bbf7c062c4a50e9f3faa911db70a223c84 # Parent 2142691be14fc4a9049c6e209c1933bd2ed847b0 amend: fix incompatibity between logfile and message option (issue3675) Bug introduced by 9732473aa24b diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py --- a/mercurial/cmdutil.py +++ b/mercurial/cmdutil.py @@ -1611,6 +1611,10 @@ def amend(ui, repo, commitfunc, old, ext # See if we got a message from -m or -l, if not, open the editor # with the message of the changeset to amend message = logmessage(ui, opts) + # ensure logfile does not conflict with later enforcement of the + # message. potential logfile content has been processed by + # `logmessage` anyway. + opts.pop('logfile') # First, do a regular commit to record all changes in the working # directory (if there are any) ui.callhooks = False diff --git a/tests/test-commit-amend.t b/tests/test-commit-amend.t --- a/tests/test-commit-amend.t +++ b/tests/test-commit-amend.t @@ -65,9 +65,11 @@ Add new file: saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-amend-backup.hg (glob) Remove file that was added in amended commit: +(and test logfile option) $ hg rm b - $ hg ci --amend -m 'amend base1 remove new file' + $ echo 'amend base1 remove new file' > ../logfile + $ hg ci --amend -l ../logfile saved backup bundle to $TESTTMP/.hg/strip-backup/b8e3cb2b3882-amend-backup.hg (glob) $ hg cat b