From 2cf66be04453bb212948e720d08dca4cfa96b35c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Remko=20Tron=C3=A7on?= <git@el-tramo.be>
Date: Mon, 10 Aug 2009 20:42:37 +0200
Subject: Fixed Session restart bug.


diff --git a/Swiften/Session/Session.cpp b/Swiften/Session/Session.cpp
index 92d1fdc..625b7ad 100644
--- a/Swiften/Session/Session.cpp
+++ b/Swiften/Session/Session.cpp
@@ -15,7 +15,8 @@ Session::Session(
 			payloadParserFactories(payloadParserFactories),
 			payloadSerializers(payloadSerializers),
       streamStack(0),
-			initialized(false) {
+			initialized(false),
+			finishing(false) {
 }
 
 Session::~Session() {
@@ -28,14 +29,18 @@ void Session::startSession() {
 }
 
 void Session::finishSession() {
+	finishing = true;
 	connection->disconnect();
 	handleSessionFinished(boost::optional<SessionError>());
+	finishing = false;
 	onSessionFinished(boost::optional<SessionError>());
 }
 
 void Session::finishSession(const SessionError& error) {
+	finishing = true;
 	connection->disconnect();
 	handleSessionFinished(boost::optional<SessionError>(error));
+	finishing = false;
 	onSessionFinished(boost::optional<SessionError>(error));
 }
 
diff --git a/Swiften/Session/Session.h b/Swiften/Session/Session.h
index 2c5ec34..26d10c1 100644
--- a/Swiften/Session/Session.h
+++ b/Swiften/Session/Session.h
@@ -108,5 +108,6 @@ namespace Swift {
 			boost::shared_ptr<ConnectionLayer> connectionLayer;
 			StreamStack* streamStack;
 			bool initialized;
+			bool finishing;
 	};
 }
-- 
cgit v0.10.2-6-g49f6