summaryrefslogtreecommitdiff
path: root/cpp/src/IceStorm/IceStormDB.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceStorm/IceStormDB.cpp')
-rw-r--r--cpp/src/IceStorm/IceStormDB.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/IceStorm/IceStormDB.cpp b/cpp/src/IceStorm/IceStormDB.cpp
index 55a1d488856..c773d4f6b09 100644
--- a/cpp/src/IceStorm/IceStormDB.cpp
+++ b/cpp/src/IceStorm/IceStormDB.cpp
@@ -29,8 +29,13 @@ main(int argc, char* argv[])
try
{
+ Ice::CtrlCHandler ctrlCHandler;
Ice::CommunicatorHolder ich(argc, argv);
- status = run(ich.communicator(), Ice::argsToStringSeq(argc, argv));
+ communicator = ich.communicator();
+
+ ctrlCHandler.setCallback(&destroyCommunicator);
+
+ status = run(Ice::argsToStringSeq(argc, argv));
}
catch(const std::exception& ex)
{