Mercurial > pidgin
changeset 26791:5872d1bc546f
On errors, don't pretend we did fetch something, pass NULL.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sun, 03 May 2009 06:38:16 +0000 |
parents | 6a177edc401e |
children | 76de9455154c |
files | libpurple/protocols/jabber/pep.c libpurple/protocols/jabber/usernick.c |
diffstat | 2 files changed, 10 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/pep.c Sun May 03 06:36:05 2009 +0000 +++ b/libpurple/protocols/jabber/pep.c Sun May 03 06:38:16 2009 +0000 @@ -67,12 +67,15 @@ JabberIqType type, const char *id, xmlnode *packet, gpointer data) { - xmlnode *pubsub = xmlnode_get_child_with_namespace(packet,"pubsub","http://jabber.org/protocol/pubsub"); + xmlnode *pubsub; xmlnode *items = NULL; JabberPEPHandler *cb = data; - if(pubsub) - items = xmlnode_get_child(pubsub, "items"); + if (type == JABBER_IQ_RESULT) { + pubsub = xmlnode_get_child_with_namespace(packet, "pubsub", "http://jabber.org/protocol/pubsub"); + if(pubsub) + items = xmlnode_get_child(pubsub, "items"); + } cb(js, from, items); }
--- a/libpurple/protocols/jabber/usernick.c Sun May 03 06:36:05 2009 +0000 +++ b/libpurple/protocols/jabber/usernick.c Sun May 03 06:38:16 2009 +0000 @@ -65,7 +65,10 @@ static void do_nick_got_own_nick_cb(JabberStream *js, const char *from, xmlnode *items) { char *oldnickname = NULL; - xmlnode *item = xmlnode_get_child(items,"item"); + xmlnode *item = NULL; + + if (items) + item = xmlnode_get_child(items,"item"); if(item) { xmlnode *nick = xmlnode_get_child_with_namespace(item,"nick","http://jabber.org/protocol/nick");