return new SVNMergeRangeList(rev1, rev2, true);
}
throw e;
}
if (locationSegments != null && !locationSegments.isEmpty()) {
SVNLocationSegment segment = (SVNLocationSegment) locationSegments.get(locationSegments.size() - 1);
if (isRollback) {
if (segment.getStartRevision() == rev2 && segment.getEndRevision() == rev1) {
childDeletedOrNonexistant[0] = false;
} else {
childDeletedOrNonexistant[0] = true;
}
return new SVNMergeRangeList(rev1, rev2, true);
}
if (segment.getStartRevision() == rev2 && segment.getEndRevision() == rev1) {
childDeletedOrNonexistant[0] = false;
return new SVNMergeRangeList(rev1, rev2, true);
}
SVNMergeRangeList differentNamesRangeList = new SVNMergeRangeList(new SVNMergeRange[0]);
SVNMergeRangeList predateRangeList = new SVNMergeRangeList(rev1, segment.getStartRevision(), true);
SVNMergeRangeList predateIntersectionRangeList = predateRangeList.intersect(parent.myRemainingRanges, false);
rangeList = new SVNMergeRangeList(segment.getStartRevision(), rev2, true);
rangeList = rangeList.merge(predateIntersectionRangeList);
for (Iterator sgs = locationSegments.iterator(); sgs.hasNext();) {
SVNLocationSegment seg = (SVNLocationSegment) sgs.next();
if (seg.getPath() != null && !seg.getPath().equals(mergeinfoPath)) {
differentNamesRangeList.pushRange(seg.getStartRevision(), seg.getEndRevision(), true);
}
}
if (differentNamesRangeList.getSize() > 0) {
rangeList = rangeList.diff(differentNamesRangeList, false);
}