diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-06-19 17:51:46 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-06-19 17:51:46 (GMT) |
commit | 499ec820b7b92d9f9a84569fdbc31507f462a77d (patch) | |
tree | a3b13a28e6513939550005b1b4cfb0eb6f618cf3 /Swiften/Session | |
parent | d4a48f83e856b380f6bf19eb19ea0b80ceef20ab (diff) | |
parent | e61e188ade3a42f7fd5ef4d6e5673d55e99a51f6 (diff) | |
download | swift-contrib-499ec820b7b92d9f9a84569fdbc31507f462a77d.zip swift-contrib-499ec820b7b92d9f9a84569fdbc31507f462a77d.tar.bz2 |
Merge branch 'swift-1.x'
* swift-1.x:
Small tweak to previous patch.
Send footer when finishing session
Diffstat (limited to 'Swiften/Session')
-rw-r--r-- | Swiften/Session/Session.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Swiften/Session/Session.cpp b/Swiften/Session/Session.cpp index 1d78640..e8b8308 100644 --- a/Swiften/Session/Session.cpp +++ b/Swiften/Session/Session.cpp @@ -38,18 +38,28 @@ void Session::startSession() { } void Session::finishSession() { + if (finishing) { + return; + } finishing = true; + if (xmppLayer) { + xmppLayer->writeFooter(); + } connection->disconnect(); handleSessionFinished(boost::optional<SessionError>()); - finishing = false; onSessionFinished(boost::optional<SessionError>()); } void Session::finishSession(const SessionError& error) { + if (finishing) { + return; + } finishing = true; + if (xmppLayer) { + xmppLayer->writeFooter(); + } connection->disconnect(); handleSessionFinished(boost::optional<SessionError>(error)); - finishing = false; onSessionFinished(boost::optional<SessionError>(error)); } |