summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ConnectRequestHandler.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2008-01-04 12:11:16 +0100
committerBenoit Foucher <benoit@zeroc.com>2008-01-04 12:11:16 +0100
commit99cecc871b86889af0a30aa27eec40a5cadad332 (patch)
treeeeb0b871e5fa2b243781572d3b1ea904fa760fec /cpp/src/Ice/ConnectRequestHandler.cpp
parentFixed bug 2599 (diff)
downloadice-99cecc871b86889af0a30aa27eec40a5cadad332.tar.bz2
ice-99cecc871b86889af0a30aa27eec40a5cadad332.tar.xz
ice-99cecc871b86889af0a30aa27eec40a5cadad332.zip
- Added missing notifyAll in ConnectRequestHandler (which could cause async
requests to hang if an exception occured during flushing). - Changed getaddrinfo(0, "0", ...) calls to getaddrinfo(0, "1", ...). Solaris doesn't recognize "0" as a valid service name. - Workaround HP-UX compiler bug caused by Glacier2::Instance inlined methods.
Diffstat (limited to 'cpp/src/Ice/ConnectRequestHandler.cpp')
-rw-r--r--cpp/src/Ice/ConnectRequestHandler.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/cpp/src/Ice/ConnectRequestHandler.cpp b/cpp/src/Ice/ConnectRequestHandler.cpp
index 02e3227988e..20d326061dc 100644
--- a/cpp/src/Ice/ConnectRequestHandler.cpp
+++ b/cpp/src/Ice/ConnectRequestHandler.cpp
@@ -420,6 +420,7 @@ ConnectRequestHandler::flushRequests()
assert(!_exception.get() && !_requests.empty());
_exception.reset(dynamic_cast<Ice::LocalException*>(ex.get()->ice_clone()));
_reference->getInstance()->clientThreadPool()->execute(new FlushRequestsWithExceptionWrapper(this, ex));
+ notifyAll();
return;
}
catch(const Ice::LocalException& ex)
@@ -428,6 +429,7 @@ ConnectRequestHandler::flushRequests()
assert(!_exception.get() && !_requests.empty());
_exception.reset(dynamic_cast<Ice::LocalException*>(ex.ice_clone()));
_reference->getInstance()->clientThreadPool()->execute(new FlushRequestsWithException(this, ex));
+ notifyAll();
return;
}