diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-02-25 12:54:57 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2010-02-25 12:54:57 +0000 |
| commit | 93b7c60780ccce1a52462fb6f8ba07e8f78e8f79 (patch) | |
| tree | 40e543d7f0ecac3f5856210b02fc8c153ac3dd0a /source/QXmppStream.cpp | |
| parent | e07a035d9a866ab8bed1aacf21fd6a3e8be40f42 (diff) | |
| download | qxmpp-93b7c60780ccce1a52462fb6f8ba07e8f78e8f79.tar.gz | |
don't reply with an error to error IQs, leads to infinite loops
Diffstat (limited to 'source/QXmppStream.cpp')
| -rw-r--r-- | source/QXmppStream.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/QXmppStream.cpp b/source/QXmppStream.cpp index 091a0feb..91b4c1cc 100644 --- a/source/QXmppStream.cpp +++ b/source/QXmppStream.cpp @@ -677,9 +677,11 @@ void QXmppStream::parser(const QByteArray& data) iq.setFrom(to); sendPacket(iq); } - else // didn't understant the iq...reply with error + else { - if(type != "result") // but not incase of result iqs + // if we didn't understant the iq, reply with error + // except for "result" and "error" iqs + if (type != "result" && type != "error") { QXmppIq iq(QXmppIq::Error); iq.setId(id); |
