From ce8650b4deffea0ddefaa793cf0f5becc930276e Mon Sep 17 00:00:00 2001 From: AlexeyZavar Date: Sat, 8 Mar 2025 23:58:27 +0300 Subject: [PATCH] fix: create a copy of selected TTL messages --- Telegram/SourceFiles/data/data_session.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Telegram/SourceFiles/data/data_session.cpp b/Telegram/SourceFiles/data/data_session.cpp index b7412bcb03..68f9a092a8 100644 --- a/Telegram/SourceFiles/data/data_session.cpp +++ b/Telegram/SourceFiles/data/data_session.cpp @@ -2573,7 +2573,9 @@ void Session::checkTTLs() { }) | ranges::views::transform([](const auto &pair) { return pair.second; }) | ranges::views::join; - for (auto &item : toBeRemoved) { + + auto itemsToProcess = toBeRemoved | ranges::to_vector; + for (const auto &item : itemsToProcess) { // remove message from `_ttlMessages` to avoid calling this method infinitely item->applyTTL(0);