summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/Glacier2/RequestQueue.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/cpp/src/Glacier2/RequestQueue.cpp b/cpp/src/Glacier2/RequestQueue.cpp
index 7556aaee266..f1c7667f596 100644
--- a/cpp/src/Glacier2/RequestQueue.cpp
+++ b/cpp/src/Glacier2/RequestQueue.cpp
@@ -236,9 +236,16 @@ Glacier2::RequestQueue::flushRequests(set<Ice::ObjectPrx>& batchProxies)
IceUtil::Mutex::Lock lock(*this);
for(vector<RequestPtr>::const_iterator p = _requests.begin(); p != _requests.end(); ++p)
{
- if((*p)->invoke()) // If batch invocation, add the proxy to the batch proxy set.
+ try
{
- batchProxies.insert((*p)->getProxy());
+ if((*p)->invoke()) // If batch invocation, add the proxy to the batch proxy set.
+ {
+ batchProxies.insert((*p)->getProxy());
+ }
+ }
+ catch(const Ice::LocalException&)
+ {
+ // Ignore, this can occur for batch requests.
}
}
_requests.clear();