diff --git a/Telegram/SourceFiles/media/streaming/media_streaming_file.cpp b/Telegram/SourceFiles/media/streaming/media_streaming_file.cpp index 635065344d..bf78ce6a63 100644 --- a/Telegram/SourceFiles/media/streaming/media_streaming_file.cpp +++ b/Telegram/SourceFiles/media/streaming/media_streaming_file.cpp @@ -309,6 +309,7 @@ void File::Context::readNextPacket() { if (i->second.size() == kMaxQueuedPackets) { processQueuedPackets(SleepPolicy::Allowed); } + Assert(i->second.size() < kMaxQueuedPackets); } else { // Still trying to read by drain. Assert(result.is()); diff --git a/Telegram/SourceFiles/media/streaming/media_streaming_player.cpp b/Telegram/SourceFiles/media/streaming/media_streaming_player.cpp index 9d38e52811..92652d82a5 100644 --- a/Telegram/SourceFiles/media/streaming/media_streaming_player.cpp +++ b/Telegram/SourceFiles/media/streaming/media_streaming_player.cpp @@ -396,6 +396,8 @@ bool Player::fileProcessPackets( videoReceivedTill(till); }); _video->process(base::take(list)); + } else { + list.clear(); // Free non-needed packets. } } return fileReadMore();