From 85387aa360adc24fedbf7fd4e30cddc6f95ff75a Mon Sep 17 00:00:00 2001 From: Thiago Camargo Date: Wed, 7 Feb 2007 04:31:33 +0000 Subject: [PATCH] Close Echo when Session Closed git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@7034 b35dd754-fafc-0310-a699-88a17e54d16e --- .../org/jivesoftware/smackx/jingle/JingleSession.java | 2 +- .../smackx/jingle/nat/TransportNegotiator.java | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/jingle/extension/source/org/jivesoftware/smackx/jingle/JingleSession.java b/jingle/extension/source/org/jivesoftware/smackx/jingle/JingleSession.java index 59ebd8b4c..9b734356f 100644 --- a/jingle/extension/source/org/jivesoftware/smackx/jingle/JingleSession.java +++ b/jingle/extension/source/org/jivesoftware/smackx/jingle/JingleSession.java @@ -1074,7 +1074,7 @@ public abstract class JingleSession extends JingleNegotiator { public void close() { destroyMediaNeg(); destroyTransportNeg(); - removePacketListener(); + removePacketListener(); System.out.println("Negociation Closed"); super.close(); } diff --git a/jingle/extension/source/org/jivesoftware/smackx/jingle/nat/TransportNegotiator.java b/jingle/extension/source/org/jivesoftware/smackx/jingle/nat/TransportNegotiator.java index 9b42adac2..b3df40703 100644 --- a/jingle/extension/source/org/jivesoftware/smackx/jingle/nat/TransportNegotiator.java +++ b/jingle/extension/source/org/jivesoftware/smackx/jingle/nat/TransportNegotiator.java @@ -142,6 +142,15 @@ public abstract class TransportNegotiator extends JingleNegotiator { return acceptedLocalCandidate; } + public void close() { + super.close(); + + for (TransportCandidate candidate : offeredCandidates) + if (candidate.getCandidateEcho() != null) + candidate.getCandidateEcho().cancel(); + + } + /** * Obtain the best common transport candidate obtained in the negotiation. *