diff options
author | Benoit Foucher <benoit@zeroc.com> | 2008-01-04 12:11:16 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2008-01-04 12:11:16 +0100 |
commit | 99cecc871b86889af0a30aa27eec40a5cadad332 (patch) | |
tree | eeb0b871e5fa2b243781572d3b1ea904fa760fec /cpp/src/Ice/ConnectRequestHandler.cpp | |
parent | Fixed bug 2599 (diff) | |
download | ice-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.cpp | 2 |
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; } |