log ending otr sessions on disconnect

iNPUTmice created

Change summary

src/eu/siacs/conversations/entities/Conversation.java          | 7 +++
src/eu/siacs/conversations/services/XmppConnectionService.java | 6 ++-
2 files changed, 10 insertions(+), 3 deletions(-)

Detailed changes

src/eu/siacs/conversations/entities/Conversation.java 🔗

@@ -297,18 +297,23 @@ public class Conversation extends AbstractEntity {
 		}
 	}
 
-	public void endOtrIfNeeded() {
+	public boolean endOtrIfNeeded() {
 		if (this.otrSession != null) {
 			if (this.otrSession.getSessionStatus() == SessionStatus.ENCRYPTED) {
 				try {
 					this.otrSession.endSession();
 					this.resetOtrSession();
+					return true;
 				} catch (OtrException e) {
 					this.resetOtrSession();
+					return false;
 				}
 			} else {
 				this.resetOtrSession();
+				return false;
 			}
+		} else {
+			return false;
 		}
 	}
 

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

@@ -1269,7 +1269,7 @@ public class XmppConnectionService extends Service {
 			conversation.getMucOptions().setOffline();
 			conversation.deregisterWithBookmark();
 			Log.d(Config.LOGTAG, conversation.getAccount().getJid()
-					+ " leaving muc " + conversation.getContactJid());
+					+ ": leaving muc " + conversation.getContactJid());
 		} else {
 			account.pendingConferenceLeaves.add(conversation);
 		}
@@ -1286,7 +1286,9 @@ public class XmppConnectionService extends Service {
 						if (conversation.getMode() == Conversation.MODE_MULTI) {
 							leaveMuc(conversation);
 						} else {
-							conversation.endOtrIfNeeded();
+							if (conversation.endOtrIfNeeded()) {
+								Log.d(Config.LOGTAG,account.getJid()+": ended otr session with "+conversation.getContactJid());
+							}
 						}
 					}
 				}