diff options
Diffstat (limited to 'cpp/src/Ice/OutgoingAsync.cpp')
-rw-r--r-- | cpp/src/Ice/OutgoingAsync.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp index d3af4f3d780..74bdd2c9bd0 100644 --- a/cpp/src/Ice/OutgoingAsync.cpp +++ b/cpp/src/Ice/OutgoingAsync.cpp @@ -863,10 +863,24 @@ ConnectionFlushBatchAsync::invoke() } catch(const RetryException& ex) { +#ifdef ICE_CPP11_MAPPING + try + { + rethrow_exception(ex.get()); + } + catch(const Ice::LocalException& ee) + { + if(completed(ee)) + { + invokeCompletedAsync(); + } + } +#else if(completed(*ex.get())) { invokeCompletedAsync(); } +#endif } catch(const Exception& ex) { |