Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit c8fe700

Browse files
committed
Simplify unionLineSpans
1 parent 19d880b commit c8fe700

File tree

1 file changed

+5
-13
lines changed

1 file changed

+5
-13
lines changed

display_list/geometry/dl_region.cc

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -139,18 +139,11 @@ size_t DlRegion::unionLineSpans(std::vector<Span>& res,
139139
*new_span++ = *begin1++;
140140
} else if (begin2->right < begin1->left) {
141141
*new_span++ = *begin2++;
142-
} else if (begin1->left < begin2->left) {
143-
current_span = *begin1;
144-
++begin1;
145-
} else if (begin2->left < begin1->left) {
146-
current_span = *begin2;
147-
++begin2;
148142
} else {
149-
FML_DCHECK(begin1->left == begin2->left);
150-
current_span.left = begin1->left;
151-
current_span.right = std::max(begin1->right, begin2->right);
152-
++begin1;
153-
++begin2;
143+
current_span = {std::min(begin1->left, begin2->left),
144+
std::max(begin1->right, begin2->right)};
145+
begin1++;
146+
begin2++;
154147
}
155148
} else if (current_span.right >= begin1->left) {
156149
current_span.right = std::max(current_span.right, begin1->right);
@@ -159,8 +152,7 @@ size_t DlRegion::unionLineSpans(std::vector<Span>& res,
159152
current_span.right = std::max(current_span.right, begin2->right);
160153
++begin2;
161154
} else {
162-
*new_span = current_span;
163-
++new_span;
155+
*new_span++ = current_span;
164156
current_span.left = current_span.right = 0;
165157
}
166158
}

0 commit comments

Comments
 (0)