diff options
author | Jose <jose@zeroc.com> | 2015-12-31 00:14:27 +0100 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2015-12-31 00:14:27 +0100 |
commit | 52d50fe96e73339b93efd5f54146d2fd01ca831d (patch) | |
tree | e8bb98b896c93943ba19fa8463ae54b406922096 /cpp/src/Ice/Object.cpp | |
parent | C++ invoke test fixes (diff) | |
download | ice-52d50fe96e73339b93efd5f54146d2fd01ca831d.tar.bz2 ice-52d50fe96e73339b93efd5f54146d2fd01ca831d.tar.xz ice-52d50fe96e73339b93efd5f54146d2fd01ca831d.zip |
C++11 updates for IceLocatorDiscovery
- Fixes IceLocatorDiscovery to build with new C++11 mapping
- Fixes to C++11 mapping for Bloject and ice_invoke async versions
Diffstat (limited to 'cpp/src/Ice/Object.cpp')
-rw-r--r-- | cpp/src/Ice/Object.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/cpp/src/Ice/Object.cpp b/cpp/src/Ice/Object.cpp index 637fa0977ad..c7af240dcac 100644 --- a/cpp/src/Ice/Object.cpp +++ b/cpp/src/Ice/Object.cpp @@ -434,6 +434,24 @@ Ice::BlobjectAsync::__dispatch(Incoming& in, const Current& current) async->__response(); } }, + [async](exception_ptr e) + { + if(e) + { + try + { + rethrow_exception(e); + } + catch(const exception& ex) + { + async->ice_exception(ex); + } + } + else + { + async->ice_exception(); + } + }, current); } catch(const ::std::exception& ex) @@ -491,6 +509,24 @@ Ice::BlobjectArrayAsync::__dispatch(Incoming& in, const Current& current) async->__response(); } }, + [async](exception_ptr e) + { + if(e) + { + try + { + rethrow_exception(e); + } + catch(const exception& ex) + { + async->ice_exception(ex); + } + } + else + { + async->ice_exception(); + } + }, current); } catch(const ::std::exception& ex) |