summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/OutgoingAsync.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2006-02-28 22:55:43 +0000
committerMarc Laukien <marc@zeroc.com>2006-02-28 22:55:43 +0000
commit8db0d770f900755f66a20abedc26c8a314d730e9 (patch)
treeec6bdf2dd40e193244ab787f417f89f87a5f7391 /cpp/src/Ice/OutgoingAsync.cpp
parentfixing bogus config file (diff)
downloadice-8db0d770f900755f66a20abedc26c8a314d730e9.tar.bz2
ice-8db0d770f900755f66a20abedc26c8a314d730e9.tar.xz
ice-8db0d770f900755f66a20abedc26c8a314d730e9.zip
retry fix
Diffstat (limited to 'cpp/src/Ice/OutgoingAsync.cpp')
-rw-r--r--cpp/src/Ice/OutgoingAsync.cpp8
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();