|
|
@ -130,7 +130,11 @@ bool Stream::ContainsBuffer([[maybe_unused]] Buffer::Tag tag) const { |
|
|
std::vector<Buffer::Tag> Stream::GetTagsAndReleaseBuffers(std::size_t max_count) { |
|
|
std::vector<Buffer::Tag> Stream::GetTagsAndReleaseBuffers(std::size_t max_count) { |
|
|
std::vector<Buffer::Tag> tags; |
|
|
std::vector<Buffer::Tag> tags; |
|
|
for (std::size_t count = 0; count < max_count && !released_buffers.empty(); ++count) { |
|
|
for (std::size_t count = 0; count < max_count && !released_buffers.empty(); ++count) { |
|
|
tags.push_back(released_buffers.front()->GetTag()); |
|
|
|
|
|
|
|
|
if (released_buffers.front()) { |
|
|
|
|
|
tags.push_back(released_buffers.front()->GetTag()); |
|
|
|
|
|
} else { |
|
|
|
|
|
ASSERT_MSG(false, "Invalid tag in released_buffers!"); |
|
|
|
|
|
} |
|
|
released_buffers.pop(); |
|
|
released_buffers.pop(); |
|
|
} |
|
|
} |
|
|
return tags; |
|
|
return tags; |
|
|
@ -140,7 +144,11 @@ std::vector<Buffer::Tag> Stream::GetTagsAndReleaseBuffers() { |
|
|
std::vector<Buffer::Tag> tags; |
|
|
std::vector<Buffer::Tag> tags; |
|
|
tags.reserve(released_buffers.size()); |
|
|
tags.reserve(released_buffers.size()); |
|
|
while (!released_buffers.empty()) { |
|
|
while (!released_buffers.empty()) { |
|
|
tags.push_back(released_buffers.front()->GetTag()); |
|
|
|
|
|
|
|
|
if (released_buffers.front()) { |
|
|
|
|
|
tags.push_back(released_buffers.front()->GetTag()); |
|
|
|
|
|
} else { |
|
|
|
|
|
ASSERT_MSG(false, "Invalid tag in released_buffers!"); |
|
|
|
|
|
} |
|
|
released_buffers.pop(); |
|
|
released_buffers.pop(); |
|
|
} |
|
|
} |
|
|
return tags; |
|
|
return tags; |
|
|
|