From 813690c10a247850e5c51ea06151f0e708bfc727 Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Tue, 3 Jul 2018 11:40:02 +0200 Subject: [PATCH] Check if message has EME before adding it --- .../org/jivesoftware/smackx/ox/chat/OpenPgpContact.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/chat/OpenPgpContact.java b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/chat/OpenPgpContact.java index 3fff9b4e0..70490a7c6 100644 --- a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/chat/OpenPgpContact.java +++ b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/chat/OpenPgpContact.java @@ -102,10 +102,11 @@ public class OpenPgpContact implements FingerprintsChangedListener { message.addExtension(encryptedPayload); // Add additional information to the message - // STOPSHIP: 20.06.18 BELOW - // TODO: Check if message already contains EME element. - message.addExtension(new ExplicitMessageEncryptionElement( - ExplicitMessageEncryptionElement.ExplicitMessageEncryptionProtocol.openpgpV0)); + if (!ExplicitMessageEncryptionElement.hasProtocol(message, + ExplicitMessageEncryptionElement.ExplicitMessageEncryptionProtocol.openpgpV0)) { + message.addExtension(new ExplicitMessageEncryptionElement( + ExplicitMessageEncryptionElement.ExplicitMessageEncryptionProtocol.openpgpV0)); + } StoreHint.set(message); message.setBody("This message is encrypted using XEP-0374: OpenPGP for XMPP: Instant Messaging.");