diff options
author | Daniel Gultsch <daniel@gultsch.de> | 2022-10-14 14:29:59 +0300 |
---|---|---|
committer | Daniel Gultsch <daniel@gultsch.de> | 2022-10-14 14:29:59 +0300 |
commit | 7eb160386d0c1a76084fab004c41d596009fc678 (patch) | |
tree | e424c88158a552cad593ab0711f29984255b0ffe | |
parent | 9a0c90f066c57c86fc81eed53f4bbc1c4e6a62c9 (diff) |
enable SM if it wasn’t enabled in bind 2
-rw-r--r-- | src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java b/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java index aaf40edf7..b467d8dc7 100644 --- a/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java +++ b/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java @@ -780,8 +780,13 @@ public class XmppConnection implements Runnable { final Element streamManagementEnabled = bound.findChild("enabled", Namespace.STREAM_MANAGEMENT); final Element carbonsEnabled = bound.findChild("enabled", Namespace.CARBONS); + final boolean waitForDisco; if (streamManagementEnabled != null) { processEnabled(streamManagementEnabled); + waitForDisco = true; + } else { + //if we didn’t enable stream managment in bind do it now + waitForDisco = enableStreamManagement(); } if (carbonsEnabled != null) { Log.d( @@ -789,9 +794,7 @@ public class XmppConnection implements Runnable { account.getJid().asBareJid() + ": successfully enabled carbons"); features.carbonsEnabled = true; } - // TODO if we didn’t enable stream managment in bind do it now - // TODO if both are set mark account ready for pipelining - sendPostBindInitialization(streamManagementEnabled != null, carbonsEnabled != null); + sendPostBindInitialization(waitForDisco, carbonsEnabled != null); } } this.quickStartInProgress = false; |