# # old_revision [069da78bf18e99522021e8885b2c352d8b1ca183] # # patch "libpurple/protocols/jabber/message.c" # from [3ceab074f381af5ba3b818d7b08a14c864708c76] # to [8ca1dc051406bc61637c2e60e5a0d632fcfdeda2] # ============================================================ --- libpurple/protocols/jabber/message.c 3ceab074f381af5ba3b818d7b08a14c864708c76 +++ libpurple/protocols/jabber/message.c 8ca1dc051406bc61637c2e60e5a0d632fcfdeda2 @@ -312,6 +312,12 @@ static void handle_buzz(JabberMessage *j g_free(str); } +#if LIBXML_VERSION > 20616 +#define xmlnscheck(x) (!strcmp(xmlns,x)) +#else +#define xmlnscheck(x) (!strcmp(xmlns,x) || (strlen(xmlns) == 0)) +#endif + void jabber_message_parse(JabberStream *js, xmlnode *packet) { JabberMessage *jm; @@ -353,13 +359,13 @@ void jabber_message_parse(JabberStream * if(child->type != XMLNODE_TYPE_TAG) continue; - if(!strcmp(child->name, "subject") && !strcmp(xmlns,"jabber:client")) { + if(!strcmp(child->name, "subject") && xmlnscheck("jabber:client")) { if(!jm->subject) jm->subject = xmlnode_get_data(child); - } else if(!strcmp(child->name, "thread") && !strcmp(xmlns,"jabber:client")) { + } else if(!strcmp(child->name, "thread") && xmlnscheck("jabber:client")) { if(!jm->thread_id) jm->thread_id = xmlnode_get_data(child); - } else if(!strcmp(child->name, "body") && !strcmp(xmlns,"jabber:client")) { + } else if(!strcmp(child->name, "body") && xmlnscheck("jabber:client")) { if(!jm->body) { char *msg = xmlnode_to_str(child, NULL); jm->body = purple_strdup_withhtml(msg);