aboutsummaryrefslogtreecommitdiff
path: root/source/QXmppStream.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/QXmppStream.cpp')
-rw-r--r--source/QXmppStream.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/source/QXmppStream.cpp b/source/QXmppStream.cpp
index 0e18b404..7d252a35 100644
--- a/source/QXmppStream.cpp
+++ b/source/QXmppStream.cpp
@@ -341,6 +341,14 @@ void QXmppStream::parser(const QByteArray& data)
m_sessionAvaliable = true;
}
}
+ else if(ns == ns_stream && nodeRecv.tagName() == "error")
+ {
+ if (!nodeRecv.firstChildElement("conflict").isNull())
+ m_xmppStreamError = QXmppClient::ConflictStreamError;
+ else
+ m_xmppStreamError = QXmppClient::UnknownStreamError;
+ emit error(QXmppClient::XmppStreamError);
+ }
else if(ns == ns_tls)
{
if(nodeRecv.tagName() == "proceed")
@@ -997,6 +1005,11 @@ QAbstractSocket::SocketError QXmppStream::getSocketError()
return m_socketError;
}
+QXmppClient::StreamError QXmppStream::getXmppStreamError()
+{
+ return m_xmppStreamError;
+}
+
QXmppVCardManager& QXmppStream::getVCardManager()
{
return m_vCardManager;