From 343bb7ff28577ca2a5b1fa80c3e96de17eb19984 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Sat, 13 Aug 2016 12:43:06 +0200 Subject: [PATCH] don't close otr session on every presence change --- .../services/XmppConnectionService.java | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java index f82285a94..2f5262dee 100644 --- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java +++ b/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(); } } }