From e1c32c376cace7fdb7432493154b6db7c72d5905 Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Wed, 16 May 2012 12:48:10 +0200 Subject: cancel reconnection timer when the user explicitly disconnects --- src/client/QXmppClient.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/client/QXmppClient.cpp') diff --git a/src/client/QXmppClient.cpp b/src/client/QXmppClient.cpp index de7acb5d..29462c06 100644 --- a/src/client/QXmppClient.cpp +++ b/src/client/QXmppClient.cpp @@ -348,6 +348,9 @@ bool QXmppClient::sendPacket(const QXmppStanza& packet) void QXmppClient::disconnectFromServer() { + // cancel reconnection + d->reconnectionTimer->stop(); + d->clientPresence.setType(QXmppPresence::Unavailable); d->clientPresence.status().setType(QXmppPresence::Status::Offline); d->clientPresence.status().setStatusText("Logged out"); @@ -441,6 +444,9 @@ void QXmppClient::setClientPresence(const QXmppPresence& presence) if (presence.type() == QXmppPresence::Unavailable) { + // cancel reconnection + d->reconnectionTimer->stop(); + // NOTE: we can't call disconnect() because it alters // the client presence if (d->stream->isConnected()) -- cgit v1.2.3