summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ThreadPool.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Ice/ThreadPool.cpp')
-rw-r--r--cpp/src/Ice/ThreadPool.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp
index d33e51fea03..3a4f99b0748 100644
--- a/cpp/src/Ice/ThreadPool.cpp
+++ b/cpp/src/Ice/ThreadPool.cpp
@@ -445,11 +445,13 @@ IceInternal::ThreadPool::run()
// Initiate server shutdown.
//
ObjectAdapterFactoryPtr factory = _instance->objectAdapterFactory();
- if(factory)
+ if(!factory)
{
- promoteFollower();
- factory->shutdown();
+ goto repeatSelect;
}
+
+ promoteFollower();
+ factory->shutdown();
}
else
{