aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppStream.cpp
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2012-03-13 17:23:05 +0000
committerJeremy Lainé <jeremy.laine@m4x.org>2012-03-13 17:23:05 +0000
commita6a80a0cad1ee3753ba658b8eb099a0b7341c507 (patch)
treef43182e1679625139a0820a5642a5a3d717688c0 /src/base/QXmppStream.cpp
parent61ab88b61f9ef923c685d90405da17dc2eeb22e7 (diff)
downloadqxmpp-a6a80a0cad1ee3753ba658b8eb099a0b7341c507.tar.gz
add support for whitespace pings (fixes issue #129)
Diffstat (limited to 'src/base/QXmppStream.cpp')
-rw-r--r--src/base/QXmppStream.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/base/QXmppStream.cpp b/src/base/QXmppStream.cpp
index d9f7ff88..234a3433 100644
--- a/src/base/QXmppStream.cpp
+++ b/src/base/QXmppStream.cpp
@@ -216,6 +216,12 @@ void QXmppStream::_q_socketReadyRead()
{
d->dataBuffer.append(d->socket->readAll());
+ // handle whitespace pings
+ if (!d->dataBuffer.isEmpty() && d->dataBuffer.trimmed().isEmpty()) {
+ d->dataBuffer.clear();
+ handleStanza(QDomElement());
+ }
+
// FIXME : maybe these QRegExps could be static?
QRegExp startStreamRegex("^(<\\?xml.*\\?>)?\\s*<stream:stream.*>");
startStreamRegex.setMinimal(true);