diff options
author | Jose <jose@zeroc.com> | 2016-01-08 21:10:14 +0100 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2016-01-08 21:10:14 +0100 |
commit | 93ab5a8f08970ad49c6f973b965b8fbefb63882f (patch) | |
tree | 18c00abdc514ca90a7ab6e1acc5b350847843681 /cpp/src/Ice/RequestHandler.cpp | |
parent | C++98 test minor build fix (diff) | |
download | ice-93ab5a8f08970ad49c6f973b965b8fbefb63882f.tar.bz2 ice-93ab5a8f08970ad49c6f973b965b8fbefb63882f.tar.xz ice-93ab5a8f08970ad49c6f973b965b8fbefb63882f.zip |
C++11 fix Exception::ice_clone to use exception_ptr
Diffstat (limited to 'cpp/src/Ice/RequestHandler.cpp')
-rw-r--r-- | cpp/src/Ice/RequestHandler.cpp | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/cpp/src/Ice/RequestHandler.cpp b/cpp/src/Ice/RequestHandler.cpp index 62acf7e4ef3..74bcb8daf40 100644 --- a/cpp/src/Ice/RequestHandler.cpp +++ b/cpp/src/Ice/RequestHandler.cpp @@ -13,10 +13,25 @@ using namespace std; using namespace IceInternal; -#ifndef ICE_CPP11_MAPPING +#ifdef ICE_CPP11_MAPPING +RetryException::RetryException(std::exception_ptr ex) : _ex(ex) +{ +} + +RetryException::RetryException(const RetryException& ex) : _ex(ex.get()) +{ +} + +exception_ptr +RetryException::get() const +{ + assert(_ex); + return _ex; +} + +#else IceUtil::Shared* IceInternal::upCast(RequestHandler* p) { return p; } IceUtil::Shared* IceInternal::upCast(CancellationHandler* p) { return p; } -#endif RetryException::RetryException(const Ice::LocalException& ex) { @@ -34,9 +49,10 @@ RetryException::get() const assert(_ex.get()); return _ex.get(); } +#endif RequestHandler::RequestHandler(const ReferencePtr& reference) : _reference(reference), _response(reference->getMode() == Reference::ModeTwoway) { -} +}
\ No newline at end of file |