diff options
author | Jose <jose@zeroc.com> | 2016-01-11 17:21:46 +0100 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2016-01-11 17:21:46 +0100 |
commit | 6fece3700ac31712b6d8892108a17e01cb2614be (patch) | |
tree | 9cdcfed91e78c9bd226881ee594f58a09fba38a6 /cpp/src/Ice/Reference.cpp | |
parent | Fix Ice/location test failures with C++11 (diff) | |
download | ice-6fece3700ac31712b6d8892108a17e01cb2614be.tar.bz2 ice-6fece3700ac31712b6d8892108a17e01cb2614be.tar.xz ice-6fece3700ac31712b6d8892108a17e01cb2614be.zip |
Add ICE_RESET_EXCEPTION macro to simplify C++ builds
Diffstat (limited to 'cpp/src/Ice/Reference.cpp')
-rw-r--r-- | cpp/src/Ice/Reference.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp index 737d4bdbfe6..f002b8356f6 100644 --- a/cpp/src/Ice/Reference.cpp +++ b/cpp/src/Ice/Reference.cpp @@ -1777,12 +1777,12 @@ IceInternal::RoutableReference::createConnection(const vector<EndpointIPtr>& all virtual void setException(const Ice::LocalException& ex) { -#ifdef ICE_CPP11_MAPPING - if(!_exception) + if(!ICE_EXCEPTION_GET(_exception)) { - _exception = ex.ice_clone(); + ICE_RESET_EXCEPTION(_exception, ex.ice_clone()); } - + +#ifdef ICE_CPP11_MAPPING try { rethrow_exception(_exception); @@ -1796,11 +1796,6 @@ IceInternal::RoutableReference::createConnection(const vector<EndpointIPtr>& all } } #else - if(!_exception.get()) - { - _exception.reset(ex.ice_clone()); - } - if(++_i == _endpoints.size()) { _callback->setException(*_exception.get()); |