# HG changeset patch # User Mikael Berthe # Date 1139252698 -3600 # Node ID f033345d1315159dbaf585f3a7831817e7f74671 # Parent 3282276e7413535e6cc99f9931241be42130b905 Call IQ callback function when receiving a RESULT packet diff -r 3282276e7413 -r f033345d1315 mcabber/src/jab_iq.c --- a/mcabber/src/jab_iq.c Mon Feb 06 20:02:09 2006 +0100 +++ b/mcabber/src/jab_iq.c Mon Feb 06 20:04:58 2006 +0100 @@ -233,16 +233,16 @@ static void handle_iq_result(jconn conn, char *from, xmlnode xmldata) { xmlnode x; - char *p; + char *id; char *ns; - p = xmlnode_get_attrib(xmldata, "id"); - if (!p) { + id = xmlnode_get_attrib(xmldata, "id"); + if (!id) { scr_LogPrint(LPRINT_LOG, "IQ result stanza with no ID, ignored."); return; } - if (atoi(p) == s_id) { // Authentication XXX + if (atoi(id) == s_id) { // Authentication XXX if (jstate == STATE_GETAUTH) { if ((x = xmlnode_get_tag(xmldata, "query")) != NULL) if (!xmlnode_get_tag(x, "digest")) { @@ -258,14 +258,17 @@ return; } + if (!iqs_callback(id, xmldata)) + return; + /* - if (!strcmp(p, "VCARDreq")) { + if (!strcmp(id, "VCARDreq")) { x = xmlnode_get_firstchild(xmldata); if (!x) x = xmldata; scr_LogPrint(LPRINT_LOGNORM, "Got VCARD"); // TODO return; - } else if (!strcmp(p, "versionreq")) { + } else if (!strcmp(id, "versionreq")) { scr_LogPrint(LPRINT_LOGNORM, "Got version"); // TODO return; }