diff options
| author | Remko Tronçon <git@el-tramo.be> | 2010-10-10 13:31:39 (GMT) | 
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2010-10-10 13:31:39 (GMT) | 
| commit | 29e4e51e21b8902c82456cc85af46fa5f5889f04 (patch) | |
| tree | 5ad1d62b82effb59d46d92a272b3ebe998ce6e08 /Swift/Controllers | |
| parent | fb7fe3dd7cf48b0e4a7337212129520dff5a236d (diff) | |
| download | swift-contrib-29e4e51e21b8902c82456cc85af46fa5f5889f04.zip swift-contrib-29e4e51e21b8902c82456cc85af46fa5f5889f04.tar.bz2  | |
Refactor responders to only start on start().
Diffstat (limited to 'Swift/Controllers')
| -rw-r--r-- | Swift/Controllers/MainController.cpp | 16 | 
1 files changed, 12 insertions, 4 deletions
diff --git a/Swift/Controllers/MainController.cpp b/Swift/Controllers/MainController.cpp index 41c5581..48cceca 100644 --- a/Swift/Controllers/MainController.cpp +++ b/Swift/Controllers/MainController.cpp @@ -196,10 +196,16 @@ void MainController::resetClient() {  	serverDiscoInfo_ = boost::shared_ptr<DiscoInfo>();  	delete mucSearchController_;  	mucSearchController_ = NULL; -	delete discoResponder_; -	discoResponder_ = NULL; -	delete clientVersionResponder_; -	clientVersionResponder_ = NULL; +	if (discoResponder_) { +		discoResponder_->stop(); +		delete discoResponder_; +		discoResponder_ = NULL; +	} +	if (clientVersionResponder_) { +		clientVersionResponder_->stop(); +		delete clientVersionResponder_; +		clientVersionResponder_ = NULL; +	}  	delete eventWindowController_;  	eventWindowController_ = NULL;  	delete xmppRosterController_; @@ -288,6 +294,7 @@ void MainController::handleConnected() {  		eventWindowController_ = new EventWindowController(eventController_, eventWindowFactory_);  		clientVersionResponder_ = new SoftwareVersionResponder(CLIENT_NAME, buildVersion, client_->getIQRouter()); +		clientVersionResponder_->start();  		loginWindow_->morphInto(rosterController_->getWindow());  		DiscoInfo discoInfo; @@ -299,6 +306,7 @@ void MainController::handleConnected() {  		discoResponder_ = new DiscoInfoResponder(client_->getIQRouter());  		discoResponder_->setDiscoInfo(discoInfo);  		discoResponder_->setDiscoInfo(capsInfo_->getNode() + "#" + capsInfo_->getVersion(), discoInfo); +		discoResponder_->start();  		serverDiscoInfo_ = boost::shared_ptr<DiscoInfo>(new DiscoInfo());  		mucSearchController_ = new MUCSearchController(jid_, uiEventStream_, mucSearchWindowFactory_, client_->getIQRouter());  | 
 Swift