diff options
Diffstat (limited to 'cpp/src/IceStorm/IceStormDB.cpp')
-rw-r--r-- | cpp/src/IceStorm/IceStormDB.cpp | 7 |
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) { |