Set members only property when getting room features

This commit is contained in:
James Booth
2015-03-29 00:21:18 +00:00
parent fac2b2cf66
commit 24a45e5292
6 changed files with 26 additions and 4 deletions

View File

@@ -178,14 +178,14 @@ iq_disco_info_request(gchar *jid)
}
void
iq_room_info_request(gchar *room)
iq_room_info_request(const char * const room)
{
xmpp_conn_t * const conn = connection_get_conn();
xmpp_ctx_t * const ctx = connection_get_ctx();
char *id = create_unique_id("room_disco_info");
xmpp_stanza_t *iq = stanza_create_disco_info_iq(ctx, id, room, NULL);
xmpp_id_handler_add(conn, _disco_info_response_handler, id, room);
xmpp_id_handler_add(conn, _disco_info_response_handler, id, strdup(room));
free(id);
@@ -1362,6 +1362,7 @@ _disco_info_response_handler(xmpp_conn_t * const conn, xmpp_stanza_t * const sta
char *error_message = stanza_get_error_message(stanza);
if (room) {
handle_room_info_error(room, error_message);
free(room);
} else {
handle_disco_info_error(from, error_message);
}
@@ -1422,6 +1423,10 @@ _disco_info_response_handler(xmpp_conn_t * const conn, xmpp_stanza_t * const sta
g_slist_free_full(features, free);
g_slist_free_full(identities, (GDestroyNotify)_identity_destroy);
}
if (room) {
free(room);
}
return 1;
}

View File

@@ -192,7 +192,7 @@ void iq_send_caps_request_for_jid(const char * const to, const char * const id,
const char * const node, const char * const ver);
void iq_send_caps_request_legacy(const char * const to, const char * const id,
const char * const node, const char * const ver);
void iq_room_info_request(gchar *room);
void iq_room_info_request(const char * const room);
void iq_room_affiliation_list(const char * const room, char *affiliation);
void iq_room_affiliation_set(const char * const room, const char * const jid, char *affiliation,
const char * const reason);