Mercurial > pidgin
comparison libpurple/protocols/jabber/presence.c @ 27104:048bcf41deef
disapproval of revision 'a383ad6a4ae7e98bbcb32b4193531ccf960eb2bb'
Legacy Delayed Delivery is still too widely deployed.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sun, 12 Jul 2009 05:42:40 +0000 |
parents | e49739413d73 |
children | a08e84032814 |
comparison
equal
deleted
inserted
replaced
27103:e49739413d73 | 27104:048bcf41deef |
---|---|
574 } | 574 } |
575 } else if(xmlns == NULL) { | 575 } else if(xmlns == NULL) { |
576 /* The rest of the cases used to check xmlns individually. */ | 576 /* The rest of the cases used to check xmlns individually. */ |
577 continue; | 577 continue; |
578 } else if(!strcmp(y->name, "delay") && !strcmp(xmlns, "urn:xmpp:delay")) { | 578 } else if(!strcmp(y->name, "delay") && !strcmp(xmlns, "urn:xmpp:delay")) { |
579 /* XXX: compare the time. urn:xmpp:delay can happen on presence packets that aren't really and truly delayed */ | 579 /* XXX: compare the time. jabber:x:delay can happen on presence packets that aren't really and truly delayed */ |
580 delayed = TRUE; | 580 delayed = TRUE; |
581 stamp = xmlnode_get_attrib(y, "stamp"); | 581 stamp = xmlnode_get_attrib(y, "stamp"); |
582 } else if(!strcmp(y->name, "c") && !strcmp(xmlns, "http://jabber.org/protocol/caps")) { | 582 } else if(!strcmp(y->name, "c") && !strcmp(xmlns, "http://jabber.org/protocol/caps")) { |
583 caps = y; /* store for later, when creating buddy resource */ | 583 caps = y; /* store for later, when creating buddy resource */ |
584 } else if (g_str_equal(y->name, "nick") && g_str_equal(xmlns, "http://jabber.org/protocol/nick")) { | 584 } else if (g_str_equal(y->name, "nick") && g_str_equal(xmlns, "http://jabber.org/protocol/nick")) { |
585 nickname = xmlnode_get_data(y); | 585 nickname = xmlnode_get_data(y); |
586 } else if(!strcmp(y->name, "x")) { | 586 } else if(!strcmp(y->name, "x")) { |
587 if(!strcmp(xmlns, "http://jabber.org/protocol/muc#user")) { | 587 if(!strcmp(xmlns, "jabber:x:delay")) { |
588 /* XXX: compare the time. jabber:x:delay can happen on presence packets that aren't really and truly delayed */ | |
589 delayed = TRUE; | |
590 stamp = xmlnode_get_attrib(y, "stamp"); | |
591 } else if(!strcmp(xmlns, "http://jabber.org/protocol/muc#user")) { | |
588 xmlnode *z; | 592 xmlnode *z; |
589 | 593 |
590 muc = TRUE; | 594 muc = TRUE; |
591 if((z = xmlnode_get_child(y, "status"))) { | 595 if((z = xmlnode_get_child(y, "status"))) { |
592 const char *code = xmlnode_get_attrib(z, "code"); | 596 const char *code = xmlnode_get_attrib(z, "code"); |