|
|
|
@ -2051,8 +2051,11 @@ static void aji_pruneregister(struct aji_client *client)
|
|
|
|
|
iks *removequery = iks_new("query");
|
|
|
|
|
iks *removeitem = iks_new("item");
|
|
|
|
|
iks *send = iks_make_iq(IKS_TYPE_GET, "http://jabber.org/protocol/disco#items");
|
|
|
|
|
if (!client || !removeiq || !removequery || !removeitem || !send) {
|
|
|
|
|
ast_log(LOG_ERROR, "Out of memory.\n");
|
|
|
|
|
goto safeout;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (client && removeiq && removequery && removeitem && send) {
|
|
|
|
|
iks_insert_node(removeiq, removequery);
|
|
|
|
|
iks_insert_node(removequery, removeitem);
|
|
|
|
|
ASTOBJ_CONTAINER_TRAVERSE(&client->buddies, 1, {
|
|
|
|
@ -2079,9 +2082,8 @@ static void aji_pruneregister(struct aji_client *client)
|
|
|
|
|
}
|
|
|
|
|
ASTOBJ_UNLOCK(iterator);
|
|
|
|
|
});
|
|
|
|
|
} else
|
|
|
|
|
ast_log(LOG_ERROR, "Out of memory.\n");
|
|
|
|
|
|
|
|
|
|
safeout:
|
|
|
|
|
iks_delete(removeiq);
|
|
|
|
|
iks_delete(removequery);
|
|
|
|
|
iks_delete(removeitem);
|
|
|
|
|