diff options
author | Matthew Newhook <matthew@zeroc.com> | 2014-10-02 16:45:39 -0230 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2014-10-02 16:45:39 -0230 |
commit | 4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291 (patch) | |
tree | 2d9c1f2761bdfc78526d2cabbca9c9d5f445a3bd /cpp/src/Ice/ServantManager.cpp | |
parent | ICE-5585 call callback from ThreadPool if conneciton already closed (diff) | |
download | ice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.tar.bz2 ice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.tar.xz ice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.zip |
Cleanup and simplification of OA in C++/Java/C#.
Diffstat (limited to 'cpp/src/Ice/ServantManager.cpp')
-rw-r--r-- | cpp/src/Ice/ServantManager.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/cpp/src/Ice/ServantManager.cpp b/cpp/src/Ice/ServantManager.cpp index e4e50a7375f..ba96673ab82 100644 --- a/cpp/src/Ice/ServantManager.cpp +++ b/cpp/src/Ice/ServantManager.cpp @@ -444,9 +444,14 @@ IceInternal::ServantManager::destroy() Ice::LoggerPtr logger; { - IceUtil::Mutex::Lock sync(*this); - - assert(_instance); // Must not be called after destruction. + IceUtil::Mutex::Lock sync(*this); + // + // If the ServantManager has already been destroyed, we're done. + // + if(!_instance) + { + return; + } logger = _instance->initializationData().logger; servantMapMap.swap(_servantMapMap); |