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,
|
_available_handler(xmpp_conn_t * const conn,
|
||||||
xmpp_stanza_t * const stanza, void * const userdata)
|
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
|
// handler still fires if error
|
||||||
if (g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_ERROR) == 0) {
|
if (g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_ERROR) == 0) {
|
||||||
log_info("Available presence of type error, exiting handler");
|
|
||||||
return 1;
|
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_SUBSCRIBE) == 0) ||
|
||||||
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_SUBSCRIBED) == 0) ||
|
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_SUBSCRIBED) == 0) ||
|
||||||
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_UNSUBSCRIBED) == 0)) {
|
(g_strcmp0(xmpp_stanza_get_type(stanza), STANZA_TYPE_UNSUBSCRIBED) == 0)) {
|
||||||
log_info("Available presence of subscription type, exiting handler");
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// handler still fires for muc presence
|
// handler still fires for muc presence
|
||||||
if (stanza_is_muc_presence(stanza)) {
|
if (stanza_is_muc_presence(stanza)) {
|
||||||
log_info("Available presence MUC type, exiting handler");
|
|
||||||
return 1;
|
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
|
// exit when no from attribute
|
||||||
if (!from) {
|
if (!from) {
|
||||||
log_warning("No from attribute found.");
|
log_warning("No from attribute found.");
|
||||||
|
@ -765,21 +765,13 @@ stanza_is_muc_presence(xmpp_stanza_t * const stanza)
|
|||||||
return FALSE;
|
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;
|
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
|
gboolean
|
||||||
|
Loading…
Reference in New Issue
Block a user