audio_core: stream: Ensure buffer is valid before release.
This commit is contained in:
		| @@ -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> tags; | ||||
|     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(); | ||||
|     } | ||||
|     return tags; | ||||
| @@ -140,7 +144,11 @@ std::vector<Buffer::Tag> Stream::GetTagsAndReleaseBuffers() { | ||||
|     std::vector<Buffer::Tag> tags; | ||||
|     tags.reserve(released_buffers.size()); | ||||
|     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(); | ||||
|     } | ||||
|     return tags; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 bunnei
					bunnei