diff options
Diffstat (limited to 'cpp/src/Ice/OutgoingAsync.cpp')
-rw-r--r-- | cpp/src/Ice/OutgoingAsync.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp index c1dcb5f3871..6145e542267 100644 --- a/cpp/src/Ice/OutgoingAsync.cpp +++ b/cpp/src/Ice/OutgoingAsync.cpp @@ -18,6 +18,7 @@ #include <Ice/LocatorInfo.h> #include <Ice/ProxyFactory.h> #include <Ice/RouterInfo.h> +#include <Ice/Outgoing.h> // For LocalExceptionWrapper. using namespace std; using namespace Ice; @@ -373,6 +374,13 @@ IceInternal::OutgoingAsync::__send() // return; } + catch(const LocalExceptionWrapper& ex) + { + if(!ex.retry()) + { + ex.get()->ice_throw(); + } + } catch(const LocalException& ex) { ProxyFactoryPtr proxyFactory = _reference->getInstance()->proxyFactory(); |