Acquire a new reference to the chat message if old reference is nil

This commit is contained in:
Benoit Martins 2023-01-06 15:39:05 +01:00 committed by QuentinArguillere
parent c47a50f5d1
commit 4c93d335ff

View file

@ -119,16 +119,21 @@
}
- (void)setChatMessageForCbs:(LinphoneChatMessage *)amessage {
if (!amessage || amessage == _message) {
if (amessage == _message) {
return;
}
if (_message){
linphone_chat_message_unref(_message);
}
_message = amessage;
linphone_chat_message_set_user_data(_message, (void *)CFBridgingRetain(self));
LinphoneChatMessageCbs *cbs = linphone_chat_message_get_callbacks(_message);
linphone_chat_message_cbs_set_msg_state_changed(cbs, message_status);
linphone_chat_message_cbs_set_participant_imdn_state_changed(cbs, participant_imdn_status);
linphone_chat_message_cbs_set_user_data(cbs, (void *)_event);
if (amessage){
linphone_chat_message_ref(amessage);
linphone_chat_message_set_user_data(_message, (void *)CFBridgingRetain(self));
LinphoneChatMessageCbs *cbs = linphone_chat_message_get_callbacks(_message);
linphone_chat_message_cbs_set_msg_state_changed(cbs, message_status);
linphone_chat_message_cbs_set_participant_imdn_state_changed(cbs, participant_imdn_status);
linphone_chat_message_cbs_set_user_data(cbs, (void *)_event);
}
}
+ (NSString *)TextMessageForChat:(LinphoneChatMessage *)message {