Mercurial > public > mercurial-scm > hg-stable
diff mercurial/obsutil.py @ 41152:191fac9ff9d3
obsutil: fix the issue5686
While traversing the obsolescence graph to find the successors sets
of csets:
In its 4th case (read comments of obsutil.successorssets to see
all 4 cases) where we know successors sets of all direct successors
of CURRENT, we were just missing a condition to filter out the case
when a cset is pruned.
And without this condition (that this patch added) it was making a whole
successor set to [] just because of one pruned marker.
For e.g:if following is the successors set of a cset A:
A -> [a, b, c]
if we prune c, we expect A's successors set to be [a, b] but
you would get:
A -> []
So this patch make sure that we calculate the right successorsset of csets
considering the pruned cset (in split case).
Differential Revision: https://phab.mercurial-scm.org/D5474
author | Sushil khanchi <sushilkhanchi97@gmail.com> |
---|---|
date | Sun, 23 Dec 2018 02:01:35 +0530 |
parents | 520514af2d93 |
children | 9de6c4f61608 |
line wrap: on
line diff
--- a/mercurial/obsutil.py Sun Jan 06 09:34:41 2019 +0530 +++ b/mercurial/obsutil.py Sun Dec 23 02:01:35 2018 +0530 @@ -711,7 +711,8 @@ if part not in newss: newss.append(part) productresult.append(newss) - markss = productresult + if productresult: + markss = productresult succssets.extend(markss) # remove duplicated and subset seen = []