XEP says thread means not the topic

Stephen Paul Weber created

Note: A message with a <subject/> and a <body/> or a <subject/> and a
<thread/> is a legitimate message, but it SHALL NOT be interpreted as a
subject change.

Change summary

src/main/java/eu/siacs/conversations/parser/MessageParser.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Detailed changes

src/main/java/eu/siacs/conversations/parser/MessageParser.java 🔗

@@ -790,7 +790,7 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece
             }
 
             if (isTypeGroupChat) {
-                if (packet.hasChild("subject")) { //TODO usually we would want to check for lack of body; however some servers do set a body :(
+                if (packet.hasChild("subject") && !packet.hasChild("thread")) { // We already know it has no body per above
                     if (conversation != null && conversation.getMode() == Conversation.MODE_MULTI) {
                         conversation.setHasMessagesLeftOnServer(conversation.countMessages() > 0);
                         final LocalizedContent subject = packet.findInternationalizedChildContentInDefaultNamespace("subject");