summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ConnectRequestHandler.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2015-06-12 16:52:36 +0200
committerBenoit Foucher <benoit@zeroc.com>2015-06-12 16:52:36 +0200
commit31c9bffb12664cefc5020baf02871bf6449e24cd (patch)
tree12ed880f0cbbe4b4689e6901bcfff84093c5a6f0 /cpp/src/Ice/ConnectRequestHandler.cpp
parentFix build issue with previous commit (diff)
downloadice-31c9bffb12664cefc5020baf02871bf6449e24cd.tar.bz2
ice-31c9bffb12664cefc5020baf02871bf6449e24cd.tar.xz
ice-31c9bffb12664cefc5020baf02871bf6449e24cd.zip
Don't throw RetryException if the failure occurs during connection establishement (ICE-6589)
Diffstat (limited to 'cpp/src/Ice/ConnectRequestHandler.cpp')
-rw-r--r--cpp/src/Ice/ConnectRequestHandler.cpp34
1 files changed, 10 insertions, 24 deletions
diff --git a/cpp/src/Ice/ConnectRequestHandler.cpp b/cpp/src/Ice/ConnectRequestHandler.cpp
index 993cb065c23..d69448743a9 100644
--- a/cpp/src/Ice/ConnectRequestHandler.cpp
+++ b/cpp/src/Ice/ConnectRequestHandler.cpp
@@ -74,19 +74,12 @@ ConnectRequestHandler::sendRequest(ProxyOutgoingBase* out)
{
{
Lock sync(*this);
- try
- {
- if(!initialized())
- {
- Request req;
- req.out = out;
- _requests.push_back(req);
- return false; // Not sent
- }
- }
- catch(const Ice::LocalException& ex)
+ if(!initialized())
{
- throw RetryException(ex);
+ Request req;
+ req.out = out;
+ _requests.push_back(req);
+ return false; // Not sent
}
}
return out->invokeRemote(_connection, _compress, _response) && !_response; // Finished if sent and no response.
@@ -102,19 +95,12 @@ ConnectRequestHandler::sendAsyncRequest(const ProxyOutgoingAsyncBasePtr& out)
out->cancelable(this); // This will throw if the request is canceled
}
- try
- {
- if(!initialized())
- {
- Request req;
- req.outAsync = out;
- _requests.push_back(req);
- return AsyncStatusQueued;
- }
- }
- catch(const Ice::LocalException& ex)
+ if(!initialized())
{
- throw RetryException(ex);
+ Request req;
+ req.outAsync = out;
+ _requests.push_back(req);
+ return AsyncStatusQueued;
}
}
return out->invokeRemote(_connection, _compress, _response);