From 5bf3920571fd625fd3db0553ea3b639876dc142f Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 28 Sep 2017 16:20:37 +0200 Subject: [PATCH] Fixed issues related to chat file transfer --- src/chat/chat-message.cpp | 4 ++-- src/chat/chat-room.cpp | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/chat/chat-message.cpp b/src/chat/chat-message.cpp index 612f983bf..0d4ebe6fe 100644 --- a/src/chat/chat-message.cpp +++ b/src/chat/chat-message.cpp @@ -511,7 +511,7 @@ void ChatMessagePrivate::onRecvEnd(belle_sip_user_body_handler_t *bh) { } bool ChatMessagePrivate::isFileTransferInProgressAndValid() { - return (chatRoom && chatRoom->getCore() && httpRequest && !!belle_http_request_is_cancelled(httpRequest)); + return (chatRoom && chatRoom->getCore() && httpRequest && !belle_http_request_is_cancelled(httpRequest)); } static void _chat_message_process_response_from_post_file(void *data, const belle_http_response_event_t *event) { @@ -835,7 +835,7 @@ int ChatMessagePrivate::startHttpTransfer(std::string url, std::string action, b belle_sip_object_ref(httpRequest); // give msg to listener to be able to start the actual file upload when server answer a 204 No content - httpListener = belle_http_request_listener_create_from_callbacks(cbs, NULL); + httpListener = belle_http_request_listener_create_from_callbacks(cbs, this); belle_http_provider_send_request(chatRoom->getCore()->http_provider, httpRequest, httpListener); return 0; error: diff --git a/src/chat/chat-room.cpp b/src/chat/chat-room.cpp index 8557d2fb1..ae5a8dc5f 100644 --- a/src/chat/chat-room.cpp +++ b/src/chat/chat-room.cpp @@ -596,7 +596,6 @@ LinphoneChatMessage *ChatRoom::createFileTransferMessage (const LinphoneContent shared_ptr chatMessage = make_shared(static_pointer_cast(shared_from_this())); chatMessage->getPrivate()->setTime(ms_time(0)); - chatMessage->getPrivate()->setContentType("text/plain"); chatMessage->getPrivate()->setDirection(ChatMessage::Direction::Outgoing); chatMessage->getPrivate()->setFileTransferInformation(linphone_content_copy(initialContent)); chatMessage->setToAddress(make_shared
(d->peerAddress.asString().c_str()));