From 2a61f9f00df213e92d7ca1df7e659accd6bd1620 Mon Sep 17 00:00:00 2001
From: Kevin Smith <git@kismith.co.uk>
Date: Tue, 30 Mar 2010 10:06:49 +0100
Subject: Fix previous commit


diff --git a/Swiften/Examples/SendMessage/SendMessage.cpp b/Swiften/Examples/SendMessage/SendMessage.cpp
index 7699eef..b7625fb 100644
--- a/Swiften/Examples/SendMessage/SendMessage.cpp
+++ b/Swiften/Examples/SendMessage/SendMessage.cpp
@@ -17,6 +17,7 @@ Client* client = 0;
 JID recipient;
 std::string messageBody;
 int exitCode = 0;
+boost::bsignals::connection errorConnection;
 
 
 void handleConnected() {
@@ -24,6 +25,7 @@ void handleConnected() {
 	message->setBody(messageBody);
 	message->setTo(recipient);
 	client->sendMessage(message);
+	errorConnection.disconnect();
 	client->disconnect();
 	eventLoop.stop();
 }
@@ -31,6 +33,7 @@ void handleConnected() {
 void handleError(const ClientError&) {
 	std::cerr << "Error!" << std::endl;
 	exitCode = 1;
+	eventLoop.stop();
 }
 
 int main(int argc, char* argv[]) {
@@ -45,7 +48,7 @@ int main(int argc, char* argv[]) {
 	client = new Swift::Client(JID(argv[1]), String(argv[2]));
 	ClientXMLTracer* tracer = new ClientXMLTracer(client);
 	client->onConnected.connect(&handleConnected);
-	client->onError.connect(&handleError);
+	errorConnection = client->onError.connect(&handleError);
 	client->connect();
 
 	{
-- 
cgit v0.10.2-6-g49f6