mirror of
https://github.com/profanity-im/profanity.git
synced 2024-11-03 19:37:16 -05:00
Fixed muc presence check, remove logging from presence handler
This commit is contained in:
parent
06856ecea1
commit
c2e173479f
@ -502,16 +502,8 @@ static int
|
||||
_available_handler(xmpp_conn_t * const conn,
|
||||
xmpp_stanza_t * const stanza, void * const userdata)
|
||||
{
|
||||
char *from = xmpp_stanza_get_attribute(stanza, STANZA_ATTR_FROM);
|
||||
if (from) {
|
||||
log_info("Available presence handler fired for: %s", from);
|
||||
} else {
|
||||
log_info("Available presence handler fired");
|
||||
}
|
||||
|
||||
// handler still fires if error
|
||||
if (g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_ERROR) == 0) {
|
||||
log_info("Available presence of type error, exiting handler");
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -520,16 +512,21 @@ _available_handler(xmpp_conn_t * const conn,
|
||||
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_SUBSCRIBE) == 0) ||
|
||||
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_SUBSCRIBED) == 0) ||
|
||||
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_UNSUBSCRIBED) == 0)) {
|
||||
log_info("Available presence of subscription type, exiting handler");
|
||||
return 1;
|
||||
}
|
||||
|
||||
// handler still fires for muc presence
|
||||
if (stanza_is_muc_presence(stanza)) {
|
||||
log_info("Available presence MUC type, exiting handler");
|
||||
return 1;
|
||||
}
|
||||
|
||||
char *from = xmpp_stanza_get_attribute(stanza, STANZA_ATTR_FROM);
|
||||
if (from) {
|
||||
log_info("Available presence handler fired for: %s", from);
|
||||
} else {
|
||||
log_info("Available presence handler fired");
|
||||
}
|
||||
|
||||
// exit when no from attribute
|
||||
if (!from) {
|
||||
log_warning("No from attribute found.");
|
||||
|
@ -765,21 +765,13 @@ stanza_is_muc_presence(xmpp_stanza_t * const stanza)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
xmpp_stanza_t *x = xmpp_stanza_get_child_by_name(stanza, STANZA_NAME_X);
|
||||
xmpp_stanza_t *x = xmpp_stanza_get_child_by_ns(stanza, STANZA_NS_MUC_USER);
|
||||
|
||||
if (x == NULL) {
|
||||
if (x) {
|
||||
return TRUE;
|
||||
} else {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
char *ns = xmpp_stanza_get_ns(x);
|
||||
if (ns == NULL) {
|
||||
return FALSE;
|
||||
}
|
||||
if (strcmp(ns, STANZA_NS_MUC_USER) != 0) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
|
Loading…
Reference in New Issue
Block a user