1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2024-11-22 12:02:05 +01:00

Merge branch '4.4'

This commit is contained in:
Florian Schmaus 2024-04-02 18:48:36 +02:00
commit 4c60986795
4 changed files with 26 additions and 5 deletions

View file

@ -1,5 +1,17 @@
# Smack Changelog
# 4.4.8 -- 2024-04-02
### Improvement
[SMACK-941](https://igniterealtime.atlassian.net/browse/SMACK-941) Suppress "roster not loaded while processing presence" warning if its caused by the reflected self-presence
### Bug
[SMACK-938](https://igniterealtime.atlassian.net/browse/SMACK-938) Busy loop in SmackReactor
[SMACK-940](https://igniterealtime.atlassian.net/browse/SMACK-940) Ignore IPv6 Zone IDs in incoming streamhost candidates
# 4.4.7 -- 2023-11-25
### Improvement

View file

@ -298,7 +298,7 @@ public class Bytestream extends IQ {
* @param port port of the stream host.
*/
public StreamHost(final Jid jid, final String address, int port) {
this(jid, InternetAddress.from(address), port);
this(jid, InternetAddress.fromIgnoringZoneId(address), port);
}
public StreamHost(Jid jid, InetAddress address, int port) {

View file

@ -51,7 +51,7 @@ public final class JingleS5BTransportCandidate extends JingleContentTransportCan
private final Type type;
public JingleS5BTransportCandidate(String candidateId, String hostString, Jid jid, int port, int priority, Type type) {
this(candidateId, InternetAddress.from(hostString), jid, port, priority, type);
this(candidateId, InternetAddress.fromIgnoringZoneId(hostString), jid, port, priority, type);
}
public JingleS5BTransportCandidate(String candidateId, InternetAddress host, Jid jid, int port, int priority, Type type) {
@ -176,7 +176,7 @@ public final class JingleS5BTransportCandidate extends JingleContentTransportCan
}
public Builder setHost(String host) {
InternetAddress inetAddress = InternetAddress.from(host);
InternetAddress inetAddress = InternetAddress.fromIgnoringZoneId(host);
return setHost(inetAddress);
}

View file

@ -1652,11 +1652,20 @@ public final class Roster extends Manager {
}
}
final Jid from = packet.getFrom();
if (!isLoaded() && rosterLoadedAtLogin) {
LOGGER.warning("Roster not loaded while processing " + packet);
XMPPConnection connection = connection();
// Only log the warning, if this is not the reflected self-presence. Otherwise,
// the reflected self-presence may cause a spurious warning in case the
// connection got quickly shut down. See SMACK-941.
if (connection != null && from != null && !from.equals(connection.getUser())) {
LOGGER.warning("Roster not loaded while processing " + packet);
}
}
final Presence presence = (Presence) packet;
final Jid from = presence.getFrom();
final BareJid key;
if (from != null) {