From 90ca06096cb4fa875e279f19f1bbcf5830dff4c5 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 26 Apr 2018 14:53:36 +0200 Subject: [PATCH] Fixed multiple file transfer in same message issue --- .../modifier/file-transfer-chat-message-modifier.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/chat/modifier/file-transfer-chat-message-modifier.cpp b/src/chat/modifier/file-transfer-chat-message-modifier.cpp index f73581c6b..43ae3663e 100644 --- a/src/chat/modifier/file-transfer-chat-message-modifier.cpp +++ b/src/chat/modifier/file-transfer-chat-message-modifier.cpp @@ -310,8 +310,13 @@ void FileTransferChatMessageModifier::processResponseFromPostFile (const belle_h FileTransferContent *fileTransferContent = nullptr; for (Content *c : message->getPrivate()->getContents()) { if (c->isFileTransfer()) { - fileTransferContent = static_cast(c); - break; + FileTransferContent *tmpContent = static_cast(c); + if (!tmpContent->getFileContent() && tmpContent->getSize() == 0) { + // If FileTransferContent doesn't have a FileContent yet and is empty + // It's the one we seek, otherwise it may be a previous uploaded FileTransferContent + fileTransferContent = tmpContent; + break; + } } }