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.cpp11
1 files changed, 2 insertions, 9 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp
index 025822a9fa0..5036d07dba3 100644
--- a/cpp/src/Ice/ThreadPool.cpp
+++ b/cpp/src/Ice/ThreadPool.cpp
@@ -1122,11 +1122,7 @@ IceInternal::ThreadPool::EventHandlerThread::updateObserver()
{
ostringstream os;
os << _pool->_prefix << '-' << this;
- _observer = resolver->getThreadObserver(_pool->_prefix, os.str(), _state, _observer);
- if(_observer)
- {
- _observer->attach();
- }
+ _observer.attach(resolver->getThreadObserver(_pool->_prefix, os.str(), _state, _observer.get()));
}
}
@@ -1179,10 +1175,7 @@ IceInternal::ThreadPool::EventHandlerThread::run()
out << "unknown exception in `" << _pool->_prefix << "'";
}
- if(_observer)
- {
- _observer->detach();
- }
+ _observer.detach();
if(_pool->_instance->initializationData().threadHook)
{