1159 obsoletenotrebased = {} |
1159 obsoletenotrebased = {} |
1160 |
1160 |
1161 # Build a mapping succesor => obsolete nodes for the obsolete |
1161 # Build a mapping succesor => obsolete nodes for the obsolete |
1162 # nodes to be rebased |
1162 # nodes to be rebased |
1163 allsuccessors = {} |
1163 allsuccessors = {} |
|
1164 cl = repo.changelog |
1164 for r in rebasesetrevs: |
1165 for r in rebasesetrevs: |
1165 n = repo[r] |
1166 n = repo[r] |
1166 if n.obsolete(): |
1167 if n.obsolete(): |
1167 node = repo.changelog.node(r) |
1168 node = cl.node(r) |
1168 for s in obsolete.allsuccessors(repo.obsstore, [node]): |
1169 for s in obsolete.allsuccessors(repo.obsstore, [node]): |
1169 allsuccessors[repo.changelog.rev(s)] = repo.changelog.rev(node) |
1170 allsuccessors[cl.rev(s)] = cl.rev(node) |
1170 |
1171 |
1171 if allsuccessors: |
1172 if allsuccessors: |
1172 # Look for successors of obsolete nodes to be rebased among |
1173 # Look for successors of obsolete nodes to be rebased among |
1173 # the ancestors of dest |
1174 # the ancestors of dest |
1174 ancs = repo.changelog.ancestors([repo[dest].rev()], |
1175 ancs = cl.ancestors([repo[dest].rev()], |
1175 stoprev=min(allsuccessors), |
1176 stoprev=min(allsuccessors), |
1176 inclusive=True) |
1177 inclusive=True) |
1177 for s in allsuccessors: |
1178 for s in allsuccessors: |
1178 if s in ancs: |
1179 if s in ancs: |
1179 obsoletenotrebased[allsuccessors[s]] = s |
1180 obsoletenotrebased[allsuccessors[s]] = s |
1180 return obsoletenotrebased |
1181 return obsoletenotrebased |
1181 |
1182 |