diff options
author | Benoit Foucher <benoit@zeroc.com> | 2009-02-10 12:30:58 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2009-02-10 12:30:58 +0100 |
commit | 20bd1ab5ed13d36b3ae40fb5840621177eeac3da (patch) | |
tree | 0f7fcc9caaf72e23b51a1b34c7bd916e3931ef67 /cpp/src/Glacier2/Blobject.cpp | |
parent | bug 3576 - stream operations should raise exceptions instead of crash (diff) | |
download | ice-20bd1ab5ed13d36b3ae40fb5840621177eeac3da.tar.bz2 ice-20bd1ab5ed13d36b3ae40fb5840621177eeac3da.tar.xz ice-20bd1ab5ed13d36b3ae40fb5840621177eeac3da.zip |
Additional fix for bug 2841
Diffstat (limited to 'cpp/src/Glacier2/Blobject.cpp')
-rw-r--r-- | cpp/src/Glacier2/Blobject.cpp | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/cpp/src/Glacier2/Blobject.cpp b/cpp/src/Glacier2/Blobject.cpp index fee88f5780c..ae3ae5441b6 100644 --- a/cpp/src/Glacier2/Blobject.cpp +++ b/cpp/src/Glacier2/Blobject.cpp @@ -53,11 +53,9 @@ public: // if(_connection) { - try - { - ex.ice_throw(); - } - catch(const Ice::ConnectionLostException&) + if(dynamic_cast<const Ice::SocketException*>(&ex) || + dynamic_cast<const Ice::TimeoutException*>(&ex) || + dynamic_cast<const Ice::ProtocolException*>(&ex)) { try { @@ -67,9 +65,6 @@ public: { } } - catch(const Exception&) - { - } } _amdCB->ice_exception(ex); @@ -115,11 +110,9 @@ public: // if(_connection) { - try - { - ex.ice_throw(); - } - catch(const Ice::ConnectionLostException&) + if(dynamic_cast<const Ice::SocketException*>(&ex) || + dynamic_cast<const Ice::TimeoutException*>(&ex) || + dynamic_cast<const Ice::ProtocolException*>(&ex)) { try { @@ -129,9 +122,6 @@ public: { } } - catch(const Exception&) - { - } } _amdCB->ice_exception(ex); |