don't close otr session on every presence change

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/services/XmppConnectionService.java | 13 
1 file changed, 5 insertions(+), 8 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/services/XmppConnectionService.java 🔗

@@ -193,15 +193,12 @@ public class XmppConnectionService extends Service {
 						sendUnsentMessages(conversation);
 					}
 				} else {
-					if (contact.getPresences().size() >= 1) {
-						if (conversation.hasValidOtrSession()) {
-							String otrResource = conversation.getOtrSession().getSessionID().getUserID();
-							if (!(Arrays.asList(contact.getPresences().toResourceArray()).contains(otrResource))) {
-								conversation.endOtrIfNeeded();
-							}
+					//check if the resource we are haveing a conversation with is still online
+					if (conversation.hasValidOtrSession()) {
+						String otrResource = conversation.getOtrSession().getSessionID().getUserID();
+						if (!(Arrays.asList(contact.getPresences().toResourceArray()).contains(otrResource))) {
+							conversation.endOtrIfNeeded();
 						}
-					} else {
-						conversation.endOtrIfNeeded();
 					}
 				}
 			}