From c4be9b4493d262a0974f3520c83cb2cc36569138 Mon Sep 17 00:00:00 2001 From: paweldomas Date: Fri, 8 Aug 2014 15:55:36 +0200 Subject: [PATCH] Prevents from including multiple CapsPacketExtension in presence packets. --- .../protocol/jabber/ScServiceDiscoveryManager.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/net/java/sip/communicator/impl/protocol/jabber/ScServiceDiscoveryManager.java b/src/net/java/sip/communicator/impl/protocol/jabber/ScServiceDiscoveryManager.java index e068084f7..7a1c21cde 100644 --- a/src/net/java/sip/communicator/impl/protocol/jabber/ScServiceDiscoveryManager.java +++ b/src/net/java/sip/communicator/impl/protocol/jabber/ScServiceDiscoveryManager.java @@ -393,6 +393,16 @@ public void interceptPacket(Packet packet) caps.getNode() + "#" + caps.getVersion(), this); + // Remove old capabilities extension if present + PacketExtension oldCaps + = packet.getExtension( + CapsPacketExtension.ELEMENT_NAME, + CapsPacketExtension.NAMESPACE); + if (oldCaps != null) + { + packet.removeExtension(oldCaps); + } + // Put new capabilities extension packet.addExtension(caps); } }