diff options
author | Benoit Foucher <benoit@zeroc.com> | 2006-06-21 14:57:38 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2006-06-21 14:57:38 +0000 |
commit | 8acfe1f3c4945ba9411d4cf4f9657b5b26738cf7 (patch) | |
tree | 271260bc1ea9b34cdaed3b8182f61ae91801ddcb /cpp/src/Ice/ServantManager.cpp | |
parent | Fix for bug #1112 (diff) | |
download | ice-8acfe1f3c4945ba9411d4cf4f9657b5b26738cf7.tar.bz2 ice-8acfe1f3c4945ba9411d4cf4f9657b5b26738cf7.tar.xz ice-8acfe1f3c4945ba9411d4cf4f9657b5b26738cf7.zip |
Fixed bug 1104
Diffstat (limited to 'cpp/src/Ice/ServantManager.cpp')
-rw-r--r-- | cpp/src/Ice/ServantManager.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/cpp/src/Ice/ServantManager.cpp b/cpp/src/Ice/ServantManager.cpp index c4c623edcfe..21a49cab273 100644 --- a/cpp/src/Ice/ServantManager.cpp +++ b/cpp/src/Ice/ServantManager.cpp @@ -153,7 +153,13 @@ IceInternal::ServantManager::findServant(const Identity& ident, const string& fa { IceUtil::Mutex::Lock sync(*this); - assert(_instance); // Must not be called after destruction. + // + // This assert is not valid if the adapter dispatch incoming + // requests from bidir connections. This method might be called if + // requests are received over the bidir connection after the + // adapter was deactivated. + // + //assert(_instance); // Must not be called after destruction. ServantMapMap::iterator p = _servantMapMapHint; FacetMap::iterator q; @@ -208,7 +214,13 @@ IceInternal::ServantManager::hasServant(const Identity& ident) const { IceUtil::Mutex::Lock sync(*this); - assert(_instance); // Must not be called after destruction. + // + // This assert is not valid if the adapter dispatch incoming + // requests from bidir connections. This method might be called if + // requests are received over the bidir connection after the + // adapter was deactivated. + // + //assert(_instance); // Must not be called after destruction. ServantMapMap::iterator p = _servantMapMapHint; ServantMapMap& servantMapMap = const_cast<ServantMapMap&>(_servantMapMap); @@ -254,7 +266,13 @@ IceInternal::ServantManager::findServantLocator(const string& category) const { IceUtil::Mutex::Lock sync(*this); - assert(_instance); // Must not be called after destruction. + // + // This assert is not valid if the adapter dispatch incoming + // requests from bidir connections. This method might be called if + // requests are received over the bidir connection after the + // adapter was deactivated. + // + //assert(_instance); // Must not be called after destruction. map<string, ServantLocatorPtr>& locatorMap = const_cast<map<string, ServantLocatorPtr>&>(_locatorMap); |