[RELEASE/FIX] Fix ban-unlinks, actually get 0.2.

This commit is contained in:
LDA 2024-11-08 17:43:41 +01:00
commit dddf1680a0
2 changed files with 11 additions and 7 deletions

View file

@ -163,6 +163,8 @@ PresenceStanza(ParseeData *args, XMLElement *stanza, XMPPThread *thr)
int power_level = 0;
char *parsee = ParseeMXID(args);
char *parsee_j = ParseeJID(args);
char *muc = ParseeTrimJID(HashMapGet(stanza->attrs, "from"));
char *parsee_muc = StrConcat(3, muc, "/", "parsee");
Free(trim);
if (!item)
@ -206,15 +208,12 @@ PresenceStanza(ParseeData *args, XMLElement *stanza, XMPPThread *thr)
if (!StrEquals(HashMapGet(stanza->attrs, "to"), parsee_j) &&
IsStatus(110))
{
char *muc = ParseeTrimJID(HashMapGet(stanza->attrs, "from"));
char *usr = HashMapGet(stanza->attrs, "to");
/* Ask for voice in a visitor self-presence. We do not notify
* the user, as an error MUST occur, which is handled and
* logged out. */
XMPPRequestVoice(args->jabber, usr, muc);
Free(muc);
}
}
@ -270,7 +269,8 @@ PresenceStanza(ParseeData *args, XMLElement *stanza, XMPPThread *thr)
}
}
if (StrEquals(type, "unavailable") &&
StrEquals(dst, parsee_j) && IsStatus(301))
(StrEquals(jid, parsee_muc) || StrEquals(jid, parsee_j))
&& IsStatus(301))
{
char *chat_id = ParseeGetFromRoomID(args, room);
@ -287,7 +287,9 @@ PresenceStanza(ParseeData *args, XMLElement *stanza, XMPPThread *thr)
}
end_item:
Free(muc);
Free(from);
Free(parsee_muc);
Free(decode_from);
Free(real_matrix);
Free(matrix_user_pl);