amend: fix incompatibity between logfile and message option (
issue3675)
Bug introduced by
9732473aa24b
--- a/mercurial/cmdutil.py Wed Oct 24 11:51:24 2012 +0200
+++ b/mercurial/cmdutil.py Wed Oct 24 15:37:32 2012 +0200
@@ -1611,6 +1611,10 @@
# 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
--- a/tests/test-commit-amend.t Wed Oct 24 11:51:24 2012 +0200
+++ b/tests/test-commit-amend.t Wed Oct 24 15:37:32 2012 +0200
@@ -65,9 +65,11 @@
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