diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-12-07 07:57:57 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-12-07 07:57:57 +0000 |
| commit | 553ec623c791e668b4790c6874de970fde40bc29 (patch) | |
| tree | f695adf9c2f8cb6a2385b944f04652a2d089f34b /src/QXmppStun.cpp | |
| parent | fab2e18c6451705be9fb784a248260d304f621c7 (diff) | |
| download | qxmpp-553ec623c791e668b4790c6874de970fde40bc29.tar.gz | |
improve ICE fallback pair selection
Diffstat (limited to 'src/QXmppStun.cpp')
| -rw-r--r-- | src/QXmppStun.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/QXmppStun.cpp b/src/QXmppStun.cpp index 5bebb379..9565a233 100644 --- a/src/QXmppStun.cpp +++ b/src/QXmppStun.cpp @@ -938,6 +938,9 @@ bool QXmppIceComponent::addRemoteCandidate(const QXmppJingleCandidate &candidate } pair->socket = socket; m_pairs << pair; + + if (!m_fallbackPair) + m_fallbackPair = pair; } return true; } @@ -1038,13 +1041,11 @@ void QXmppIceComponent::readyRead() if (!messageType || messageCookie != STUN_MAGIC) { // use this as an opportunity to flag a potential pair - if (!m_fallbackPair) { - foreach (Pair *pair, m_pairs) { - if (pair->remote.host() == remoteHost && - pair->remote.port() == remotePort) { - m_fallbackPair = pair; - break; - } + foreach (Pair *pair, m_pairs) { + if (pair->remote.host() == remoteHost && + pair->remote.port() == remotePort) { + m_fallbackPair = pair; + break; } } emit datagramReceived(buffer); |
