From 635f5f2c3675e49353e1c88f6e897d8b8413eded Mon Sep 17 00:00:00 2001
From: Xavier Robin <xavalias-github@xavier.robin.name>
Date: Mon, 13 May 2024 17:20:13 +0200
Subject: [PATCH] fix: set is_ligand based on entity.type

Previously this was based on the absence of seqres and not being a
water, which was quite convoluted and made reading of seqres required.
---
 modules/io/src/mol/mmcif_reader.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/modules/io/src/mol/mmcif_reader.cc b/modules/io/src/mol/mmcif_reader.cc
index ae2bf5f2b..6ad799100 100644
--- a/modules/io/src/mol/mmcif_reader.cc
+++ b/modules/io/src/mol/mmcif_reader.cc
@@ -1949,9 +1949,7 @@ void MMCifReader::OnEndData()
         pdb_auth_chain_name = css->first.GetStringProp("pdb_auth_chain_name");
         info_.AddMMCifPDBChainTr(css->first.GetName(), pdb_auth_chain_name);
         info_.AddPDBMMCifChainTr(pdb_auth_chain_name, css->first.GetName());
-      } else if (edm_it->second.type!=mol::CHAINTYPE_WATER) {
-        // mark everything that doesn't have SEQRES and isn't of type
-        // water as ligand
+      } else if (edm_it->second.entity_type=="non-polymer") {
         mol::ChainHandle chain=css->first;
         mol::ResidueHandleList residues=chain.GetResidueList();
         for (mol::ResidueHandleList::iterator 
-- 
GitLab