diff options
Diffstat (limited to 'protocols/Telegram/src/proto.cpp')
-rw-r--r-- | protocols/Telegram/src/proto.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/protocols/Telegram/src/proto.cpp b/protocols/Telegram/src/proto.cpp index 6e59c6c983..a420a65122 100644 --- a/protocols/Telegram/src/proto.cpp +++ b/protocols/Telegram/src/proto.cpp @@ -462,6 +462,15 @@ void CTelegramProto::ProcessFileMessage(TG_FILE_REQUEST *ft, const TD::message * return; } + // if that file was sent once, it might be cached at the server & reused + if (auto *pRemote = pFile->remote_.get()) { + if (pRemote->is_uploading_completed_) { + ProtoBroadcastAck(ft->m_hContact, ACKTYPE_FILE, ACKRESULT_SUCCESS, ft); + delete ft; + return; + } + } + char szUserId[100]; auto szMsgId(msg2id(pMsg)); |