Don't cancel admin log files download on item destroy.

This commit is contained in:
John Preston 2023-08-21 12:06:20 +02:00
parent 4e3db5b693
commit 56555c330b
2 changed files with 13 additions and 8 deletions

View file

@ -833,11 +833,14 @@ void DownloadManager::cancel(
SessionData &data, SessionData &data,
std::vector<DownloadingId>::iterator i) { std::vector<DownloadingId>::iterator i) {
const auto object = i->object; const auto object = i->object;
const auto item = object.item;
remove(data, i); remove(data, i);
if (const auto document = object.document) { if (!item->isAdminLogEntry()) {
document->cancel(); if (const auto document = object.document) {
} else if (const auto photo = object.photo) { document->cancel();
photo->cancel(); } else if (const auto photo = object.photo) {
photo->cancel();
}
} }
} }

View file

@ -495,8 +495,10 @@ void History::destroyMessage(not_null<HistoryItem*> item) {
session().api().cancelLocalItem(item); session().api().cancelLocalItem(item);
} }
const auto document = [&] { const auto documentToCancel = [&] {
const auto media = item->media(); const auto media = item->isAdminLogEntry()
? nullptr
: item->media();
return media ? media->document() : nullptr; return media ? media->document() : nullptr;
}(); }();
@ -510,8 +512,8 @@ void History::destroyMessage(not_null<HistoryItem*> item) {
Assert(i != end(_messages)); Assert(i != end(_messages));
_messages.erase(i); _messages.erase(i);
if (document) { if (documentToCancel) {
session().data().documentMessageRemoved(document); session().data().documentMessageRemoved(documentToCancel);
} }
} }