Skip to content

Commit d4195f9

Browse files
committed
1 parent 60bff1a commit d4195f9

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

lib/libcxx/include/__ranges/join_view.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -410,8 +410,13 @@ struct __segmented_iterator_traits<_JoinViewIterator> {
410410

411411
static constexpr _LIBCPP_HIDE_FROM_ABI _JoinViewIterator
412412
__compose(__segment_iterator __seg_iter, __local_iterator __local_iter) {
413-
return _JoinViewIterator(
414-
std::move(__seg_iter).__get_data(), std::move(__seg_iter).__get_iter(), std::move(__local_iter));
413+
auto&& __parent = std::move(__seg_iter).__get_data();
414+
auto&& __outer = std::move(__seg_iter).__get_iter();
415+
if (__local_iter == ranges::end(*__outer)) {
416+
++__outer;
417+
return _JoinViewIterator(*__parent, __outer);
418+
}
419+
return _JoinViewIterator(__parent, __outer, std::move(__local_iter));
415420
}
416421
};
417422

0 commit comments

Comments
 (0)