summaryrefslogtreecommitdiff
path: root/cpp/src/IceUtil/CtrlCHandler.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2004-12-03 19:46:51 +0000
committerMarc Laukien <marc@zeroc.com>2004-12-03 19:46:51 +0000
commit895c126dadd9e1c0e8641269d16d4b8d3dd70c13 (patch)
tree3e3003d57dc23a99bb1829bf9a525aec85517412 /cpp/src/IceUtil/CtrlCHandler.cpp
parentfix for proxy marshaling bug (diff)
downloadice-895c126dadd9e1c0e8641269d16d4b8d3dd70c13.tar.bz2
ice-895c126dadd9e1c0e8641269d16d4b8d3dd70c13.tar.xz
ice-895c126dadd9e1c0e8641269d16d4b8d3dd70c13.zip
fixes
Diffstat (limited to 'cpp/src/IceUtil/CtrlCHandler.cpp')
-rw-r--r--cpp/src/IceUtil/CtrlCHandler.cpp63
1 files changed, 53 insertions, 10 deletions
diff --git a/cpp/src/IceUtil/CtrlCHandler.cpp b/cpp/src/IceUtil/CtrlCHandler.cpp
index 4e92ad5a0a7..36063bdffb9 100644
--- a/cpp/src/IceUtil/CtrlCHandler.cpp
+++ b/cpp/src/IceUtil/CtrlCHandler.cpp
@@ -73,10 +73,32 @@ static BOOL WINAPI handlerRoutine(DWORD dwCtrlType)
{
callback(dwCtrlType);
}
- catch(...)
- {
- assert(0);
- }
+ catch(const IceUtil::Exception& ex)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << ex << endl;
+ }
+ catch(const std::exception& ex)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): std::exception: " << ex.what() << endl;
+ }
+ catch(const std::string& msg)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << msg << endl;
+ }
+ catch(const char * msg)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << msg << endl;
+ }
+ catch(...)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): unknown exception" << endl;
+ }
+
}
return TRUE;
}
@@ -155,12 +177,33 @@ sigwaitThread(void*)
{
try
{
- callback(signal);
- }
- catch(...)
- {
- assert(0);
- }
+ callback(signal);
+ }
+ catch(const IceUtil::Exception& ex)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << ex << endl;
+ }
+ catch(const std::exception& ex)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): std::exception: " << ex.what() << endl;
+ }
+ catch(const std::string& msg)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << msg << endl;
+ }
+ catch(const char * msg)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): " << msg << endl;
+ }
+ catch(...)
+ {
+ cerr << " (while destroying in response to signal "
+ << "): unknown exception" << endl;
+ }
}
rc = pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, 0);