Mercurial > pidgin
changeset 1876:8ebd3b0ff325
[gaim-migrate @ 1886]
na na na na
na na na na
hey hey hey
good bye
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Tue, 22 May 2001 01:03:23 +0000 |
parents | c0a69f90d662 |
children | a333eccaae93 |
files | plugins/jabber/jabber.c |
diffstat | 1 files changed, 17 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/jabber/jabber.c Tue May 22 00:18:33 2001 +0000 +++ b/plugins/jabber/jabber.c Tue May 22 01:03:23 2001 +0000 @@ -596,7 +596,7 @@ type = xmlnode_get_attrib(p->x, "type"); - if (!type || !strcmp(type, "normal") || !strcmp(type, "chat")) { + if (!type || !strcasecmp(type, "normal") || !strcasecmp(type, "chat")) { /* XXX namespaces could be handled better. (mid) */ if ((xmlns = xmlnode_get_tag(p->x, "x"))) @@ -617,7 +617,7 @@ if (!from) return; - if (type && !strcmp(type, "jabber:x:conference")) { + if (type && !strcasecmp(type, "jabber:x:conference")) { char *room; room = xmlnode_get_attrib(xmlns, "jid"); @@ -642,7 +642,7 @@ if (msg) free(msg); - } else if (!strcmp(type, "error")) { + } else if (!strcasecmp(type, "error")) { if ((y = xmlnode_get_tag(p->x, "error"))) { type = xmlnode_get_attrib(y, "code"); msg = xmlnode_get_data(y); @@ -653,7 +653,7 @@ do_error_dialog(msg, from); g_free(from); } - } else if (!strcmp(type, "groupchat")) { + } else if (!strcasecmp(type, "groupchat")) { struct jabber_chat *jc; static int i = 0; @@ -730,13 +730,13 @@ show = xmlnode_get_data(y); if (!show) { state = UC_NORMAL; - } else if (!strcmp(show, "away")) { + } else if (!strcasecmp(show, "away")) { state = UC_AWAY; - } else if (!strcmp(show, "chat")) { + } else if (!strcasecmp(show, "chat")) { state = UC_CHAT; - } else if (!strcmp(show, "xa")) { + } else if (!strcasecmp(show, "xa")) { state = UC_XA; - } else if (!strcmp(show, "dnd")) { + } else if (!strcasecmp(show, "dnd")) { state = UC_DND; } } else { @@ -802,10 +802,12 @@ } } else { if (who->resource) { - if (type && !strcmp(type, "unavailable")) { + if (type && !strcasecmp(type, "unavailable")) { struct jabber_data *jd; - if (!jc) - jc = find_existing_chat(GJ_GC(j), who); + if (!jc && !(jc = find_existing_chat(GJ_GC(j), who))) { + g_free(buddy); + return; + } jd = jc->gc->proto_data; if (strcmp(who->resource, jc->Jid->resource)) { remove_chat_buddy(jc->b, who->resource); @@ -816,8 +818,10 @@ serv_got_chat_left(GJ_GC(j), jc->b->id); g_free(jc); } else { - if (!jc) - jc = find_existing_chat(GJ_GC(j), who); + if (!jc && !(jc = find_existing_chat(GJ_GC(j), who))) { + g_free(buddy); + return; + } if (!find_chat_buddy(jc->b, who->resource)) add_chat_buddy(jc->b, who->resource); else if ((y = xmlnode_get_tag(p->x, "status"))) {