Mercurial > hg
changeset 27723:bf86e3e87123 stable
unionrepo: fix wrong rev being checked in iscensored (issue5024)
author | Sean Farley <sean@farley.io> |
---|---|
date | Wed, 06 Jan 2016 11:01:55 -0800 |
parents | 6c7d26cef0cd |
children | 443848eece18 3203dfe341f9 |
files | mercurial/unionrepo.py tests/test-unionrepo.t |
diffstat | 2 files changed, 21 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/unionrepo.py Fri Jan 08 16:27:25 2016 +0100 +++ b/mercurial/unionrepo.py Wed Jan 06 11:01:55 2016 -0800 @@ -182,7 +182,8 @@ """Check if a revision is censored.""" if rev <= self.repotiprev: return filelog.filelog.iscensored(self, rev) - return self.revlog2.iscensored(rev) + node = self.node(rev) + return self.revlog2.iscensored(self.revlog2.rev(node)) class unionpeer(localrepo.localpeer): def canpush(self):
--- a/tests/test-unionrepo.t Fri Jan 08 16:27:25 2016 +0100 +++ b/tests/test-unionrepo.t Wed Jan 06 11:01:55 2016 -0800 @@ -148,3 +148,22 @@ 2:68c0685446a3 repo1-2 1:8a58db72e69d repo1-1 0:f093fec0529b repo1-0 + +union repos should use the correct rev number (issue5024) + + $ hg init a + $ cd a + $ echo a0 >> f + $ hg ci -Aqm a0 + $ cd .. + $ hg init b + $ cd b + $ echo b0 >> f + $ hg ci -Aqm b0 + $ echo b1 >> f + $ hg ci -qm b1 + $ cd .. + +"hg files -v" to call fctx.size() -> fctx.iscensored() + $ hg files -R union:b+a -r2 -v + 3 b/f (glob)