--- a/.hgsigs Thu Apr 21 10:39:52 2022 -0700
+++ b/.hgsigs Thu May 12 07:36:37 2022 -0700
@@ -226,3 +226,4 @@
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
--- a/.hgtags Thu Apr 21 10:39:52 2022 -0700
+++ b/.hgtags Thu May 12 07:36:37 2022 -0700
@@ -239,3 +239,4 @@
c00d3ce4e94bb0ee8d809e25e1dcb2a5fab84e2c 6.1rc0
d4486810a1795fba9521449b8885ced034f3a6dd 6.1
5bd6bcd31dd1ebb63b8914b00064f96297267af7 6.1.1
+0ddd5e1f5f67438af85d12e4ce6c39021dde9916 6.1.2
--- a/mercurial/cmdutil.py Thu Apr 21 10:39:52 2022 -0700
+++ b/mercurial/cmdutil.py Thu May 12 07:36:37 2022 -0700
@@ -2914,9 +2914,9 @@
# filectxs from the old commit.
if changes or changeset_copies:
# Recompute copies (avoid recording a -> b -> a)
- copied = copies.pathcopies(base, wctx, matcher)
- if old.p2:
- copied.update(copies.pathcopies(old.p2(), wctx, matcher))
+ copied = copies.pathcopies(base, wctx)
+ if old.p2():
+ copied.update(copies.pathcopies(old.p2(), wctx))
# Prune files which were reverted by the updates: if old
# introduced file X and the file was renamed in the working
--- a/mercurial/filelog.py Thu Apr 21 10:39:52 2022 -0700
+++ b/mercurial/filelog.py Thu May 12 07:36:37 2022 -0700
@@ -202,10 +202,10 @@
# for revisions with renames, we have to go the slow way
node = self.node(rev)
+ if self.iscensored(rev):
+ return 0
if self.renamed(node):
return len(self.read(node))
- if self.iscensored(rev):
- return 0
# XXX if self.read(node).startswith("\1\n"), this returns (size+4)
# XXX See also basefilectx.cmp.
--- a/tests/test-amend.t Thu Apr 21 10:39:52 2022 -0700
+++ b/tests/test-amend.t Thu May 12 07:36:37 2022 -0700
@@ -609,3 +609,20 @@
> hg status
> fi
OK.
+
+Amending a commit that has copies but not specifying those copies shouldn't
+cause them to be lost
+
+ $ cd $TESTTMP
+ $ hg init dont-lose-copies; cd dont-lose-copies
+ $ echo r0 > r0; hg commit -qAm "r0"
+ $ hg cp r0 r0_copied; hg commit -qm "copy r0"
+ $ echo hi > new_file_amend_me
+ $ hg status --change . --copies
+ A r0_copied
+ r0
+ $ hg amend -qA new_file_amend_me
+ $ hg status --change . --copies
+ A new_file_amend_me
+ A r0_copied
+ r0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-censor2.t Thu May 12 07:36:37 2022 -0700
@@ -0,0 +1,22 @@
+ $ cat >> $HGRCPATH <<EOF
+ > [censor]
+ > policy=ignore
+ > EOF
+
+ $ mkdir r
+ $ cd r
+ $ hg init
+ $ echo secret > target
+ $ hg commit -Am "secret"
+ adding target
+ $ touch bystander
+ $ hg commit -Am "innocent"
+ adding bystander
+ $ echo erased-secret > target
+ $ hg commit -m "erased secret"
+ $ hg censor target --config extensions.censor= -r ".^^"
+ $ hg update ".^"
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ cat target
+ $ hg update tip
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved