diff options
Diffstat (limited to 'libdino/src/service/message_processor.vala')
| -rw-r--r-- | libdino/src/service/message_processor.vala | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/libdino/src/service/message_processor.vala b/libdino/src/service/message_processor.vala index b9c23240..7997af67 100644 --- a/libdino/src/service/message_processor.vala +++ b/libdino/src/service/message_processor.vala @@ -3,7 +3,7 @@ using Gee; using Xmpp; using Xmpp.Xep; using Dino.Entities; -using Qlite; +using Dino.Qlite; namespace Dino { @@ -472,12 +472,8 @@ public class MessageProcessor : StreamInteractionModule, Object { // Set an origin ID if a MUC doen't guarantee to keep IDs if (conversation.type_ == Conversation.Type.GROUPCHAT) { - Xep.Muc.Flag? flag = stream.get_flag(Xep.Muc.Flag.IDENTITY); - if (flag == null) { - message.marked = Entities.Message.Marked.UNSENT; - return; - } - if(!flag.has_room_feature(conversation.counterpart, Xep.Muc.Feature.STABLE_ID)) { + var supports_stable_ids = stream_interactor.get_module(EntityInfo.IDENTITY).has_feature_cached(conversation.account, conversation.counterpart, Xep.Muc.FEATURE_STABLE_ID); + if(!supports_stable_ids) { UniqueStableStanzaIDs.set_origin_id(new_message, message.stanza_id); } } |
