diff --git a/modules/mol/base/src/impl/atom_impl.cc b/modules/mol/base/src/impl/atom_impl.cc
index 2e754a73b0b95474f741597dea19865734a25824..46fa1ac642c03f9d92828ae1889d485282b46728 100644
--- a/modules/mol/base/src/impl/atom_impl.cc
+++ b/modules/mol/base/src/impl/atom_impl.cc
@@ -73,9 +73,6 @@ void AtomImpl::Apply(EntityVisitor& v)
 
 ResidueImplPtr AtomImpl::GetResidue() const
 {
-  if (!res_.lock()) {
-    throw InvalidHandle();
-  }
   return res_.lock();
 }
 
@@ -218,7 +215,7 @@ AtomImpl::~AtomImpl() {
 EntityImplPtr AtomImpl::GetEntity() const
 {
   if (!res_.lock()) {
-    throw InvalidHandle();
+    return EntityImplPtr();
   }
   return res_.lock()->GetEntity();
 }
diff --git a/modules/mol/base/src/impl/chain_impl.cc b/modules/mol/base/src/impl/chain_impl.cc
index 6aff6305b4e0ea98d5508e576fa2ba46b157ef0c..adf5aeb8b88ea887c6af3252ca0fdea423eab516 100644
--- a/modules/mol/base/src/impl/chain_impl.cc
+++ b/modules/mol/base/src/impl/chain_impl.cc
@@ -369,9 +369,6 @@ AtomImplPtr ChainImpl::FindAtom(const ResNum& num,
 
 EntityImplPtr ChainImpl::GetEntity() const 
 {
-  if (!ent_.lock()) {
-    throw InvalidHandle();
-  }
   return ent_.lock();
 }
 int ChainImpl::GetIndexForResNum(const ResNum& number) const
diff --git a/modules/mol/base/src/impl/residue_impl.cc b/modules/mol/base/src/impl/residue_impl.cc
index 316f16de24889aefa363508529439364ff935a63..819c7294dea5a4ca9bedb5c5c97a652b0a34de8e 100644
--- a/modules/mol/base/src/impl/residue_impl.cc
+++ b/modules/mol/base/src/impl/residue_impl.cc
@@ -200,9 +200,6 @@ void ResidueImpl::SetSecStructure(SecStructure ss)
 
 EntityImplPtr ResidueImpl::GetEntity() const
 {
-  if (!ent_.lock()) {
-    throw InvalidHandle();
-  }
   return ent_.lock();
 }
 
@@ -259,9 +256,6 @@ int ResidueImpl::GetBondCount() const
 
 ChainImplPtr ResidueImpl::GetChain() const
 {
-  if (!chain_.lock()) {
-    throw InvalidHandle();
-  }
   return chain_.lock();
 }