diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Ice/Proxy.cpp | 52 |
1 files changed, 32 insertions, 20 deletions
diff --git a/cpp/src/Ice/Proxy.cpp b/cpp/src/Ice/Proxy.cpp index 2fb3fbd4ee1..e9b70364262 100644 --- a/cpp/src/Ice/Proxy.cpp +++ b/cpp/src/Ice/Proxy.cpp @@ -847,14 +847,17 @@ IceDelegateM::Ice::Object::ice_isA(const string& __id, const Context& __context) BasicStream* __is = __og.is(); if(!__ok) { - __is->throwException(); + try + { + __is->throwException(); + } + catch(const ::Ice::UserException& __ex) + { + throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); + } } __is->read(__ret); } - catch(const ::Ice::UserException& __ex) - { - throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); - } catch(const ::Ice::LocalException& __ex) { throw ::IceInternal::NonRepeatable(__ex); @@ -873,13 +876,16 @@ IceDelegateM::Ice::Object::ice_ping(const Context& __context) BasicStream* __is = __og.is(); if(!__ok) { - __is->throwException(); + try + { + __is->throwException(); + } + catch(const ::Ice::UserException& __ex) + { + throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); + } } } - catch(const ::Ice::UserException& __ex) - { - throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); - } catch(const ::Ice::LocalException& __ex) { throw ::IceInternal::NonRepeatable(__ex); @@ -898,14 +904,17 @@ IceDelegateM::Ice::Object::ice_ids(const Context& __context) BasicStream* __is = __og.is(); if(!__ok) { - __is->throwException(); + try + { + __is->throwException(); + } + catch(const ::Ice::UserException& __ex) + { + throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); + } } __is->read(__ret); } - catch(const ::Ice::UserException& __ex) - { - throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); - } catch(const ::Ice::LocalException& __ex) { throw ::IceInternal::NonRepeatable(__ex); @@ -925,14 +934,17 @@ IceDelegateM::Ice::Object::ice_id(const Context& __context) BasicStream* __is = __og.is(); if(!__ok) { - __is->throwException(); + try + { + __is->throwException(); + } + catch(const ::Ice::UserException& __ex) + { + throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); + } } __is->read(__ret); } - catch(const ::Ice::UserException& __ex) - { - throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name()); - } catch(const ::Ice::LocalException& __ex) { throw ::IceInternal::NonRepeatable(__ex); |