diff options
Diffstat (limited to 'cpp/src/Ice/ThreadPool.cpp')
-rw-r--r-- | cpp/src/Ice/ThreadPool.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp index d748ec70a7e..56bc93f761e 100644 --- a/cpp/src/Ice/ThreadPool.cpp +++ b/cpp/src/Ice/ThreadPool.cpp @@ -593,6 +593,7 @@ IceInternal::ThreadPool::finish(const EventHandlerPtr& handler, bool closeNow) assert(!_destroyed); #if !defined(ICE_USE_IOCP) && !defined(ICE_OS_WINRT) closeNow = _selector.finish(handler.get(), closeNow); // This must be called before! + _pendingHandlers.erase(handler.get()); _workQueue->queue(new FinishedWorkItem(handler, !closeNow)); return closeNow; #else |