1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-09-22 19:45:54 -04:00

Fix room config check for servers that don't send 110 status

This commit is contained in:
James Booth 2014-09-04 20:17:39 +01:00
parent e55b9dbeff
commit bf283652f8

View File

@ -730,26 +730,17 @@ stanza_muc_requires_config(xmpp_stanza_t * const stanza)
return FALSE;
}
// check for status code 110 and 201
gboolean has110 = FALSE;
gboolean has201 = FALSE;
// check for status code 201
xmpp_stanza_t *x_children = xmpp_stanza_get_children(x);
while (x_children != NULL) {
if (g_strcmp0(xmpp_stanza_get_name(x_children), STANZA_NAME_STATUS) == 0) {
char *code = xmpp_stanza_get_attribute(x_children, STANZA_ATTR_CODE);
if (g_strcmp0(code, "110") == 0) {
has110 = TRUE;
}
if (g_strcmp0(code, "201") == 0) {
has201 = TRUE;
return TRUE;
}
}
x_children = xmpp_stanza_get_next(x_children);
}
if (has110 && has201) {
return TRUE;
}
}
return FALSE;
}