diff options
Diffstat (limited to 'cpp/demo/Freeze/library/Client.cpp')
-rw-r--r-- | cpp/demo/Freeze/library/Client.cpp | 38 |
1 files changed, 13 insertions, 25 deletions
diff --git a/cpp/demo/Freeze/library/Client.cpp b/cpp/demo/Freeze/library/Client.cpp index 5b4345a2936..4e8b21772d5 100644 --- a/cpp/demo/Freeze/library/Client.cpp +++ b/cpp/demo/Freeze/library/Client.cpp @@ -14,8 +14,11 @@ using namespace std; class LibraryClient : public Ice::Application { +public: + + LibraryClient(); + virtual int run(int argc, char* argv[]); - virtual void interruptCallback(int); }; int @@ -25,33 +28,18 @@ main(int argc, char* argv[]) return app.main(argc, argv, "config.client"); } -int -LibraryClient::run(int argc, char* argv[]) -{ +LibraryClient::LibraryClient() : // - // Since this is an interactive demo we want the custom interrupt - // callback to be called when the process is interrupted. + // Since this is an interactive demo we don't want any signal + // handling. // - callbackOnInterrupt(); - - int runParser(int, char*[], const Ice::CommunicatorPtr&); - return runParser(argc, argv, communicator()); + Application(Ice::NoSignalHandling) +{ } -void -LibraryClient::interruptCallback(int) +int +LibraryClient::run(int argc, char* argv[]) { - try - { - communicator()->destroy(); - } - catch(const IceUtil::Exception& ex) - { - cerr << appName() << ": " << ex << endl; - } - catch(...) - { - cerr << appName() << ": unknown exception" << endl; - } - exit(EXIT_SUCCESS); + int runParser(int, char*[], const Ice::CommunicatorPtr&); + return runParser(argc, argv, communicator()); } |