diff --git a/src/main/java/eu/siacs/conversations/parser/MessageParser.java b/src/main/java/eu/siacs/conversations/parser/MessageParser.java index 9f8fbe6bb6f1e748780624c313e2af2983cd4675..78ce55d312d62da5b9164ead76bf77b8bac186dd 100644 --- a/src/main/java/eu/siacs/conversations/parser/MessageParser.java +++ b/src/main/java/eu/siacs/conversations/parser/MessageParser.java @@ -573,7 +573,7 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece } } - if ((body != null || pgpEncrypted != null || (axolotlEncrypted != null && axolotlEncrypted.hasChild("payload")) || !attachments.isEmpty() || html != null) && !isMucStatusMessage) { + if ((body != null || pgpEncrypted != null || (axolotlEncrypted != null && axolotlEncrypted.hasChild("payload")) || !attachments.isEmpty() || html != null || (packet.hasChild("subject") && packet.hasChild("thread"))) && !isMucStatusMessage) { final Conversation conversation = mXmppConnectionService.findOrCreateConversation(account, counterpart.asBareJid(), conversationIsProbablyMuc, false, query, false); final boolean conversationMultiMode = conversation.getMode() == Conversation.MODE_MULTI; @@ -673,7 +673,7 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece } else if (body == null && !attachments.isEmpty()) { message = new Message(conversation, "", Message.ENCRYPTION_NONE, status); } else { - message = new Message(conversation, body == null ? "HTML-only message" : body.content, Message.ENCRYPTION_NONE, status); + message = new Message(conversation, body == null ? null : body.content, Message.ENCRYPTION_NONE, status); if (body != null && body.count > 1) { message.setBodyLanguage(body.language); }