From 8b04dff23972cfd23d703824a6e261068a54f4cc Mon Sep 17 00:00:00 2001 From: marco <marco@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Tue, 20 Apr 2010 10:03:00 +0000 Subject: [PATCH] Fix embarassing thinko in PDBReader git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2061 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- modules/io/src/mol/pdb_reader.cc | 9 +++++---- modules/io/src/mol/pdb_writer.cc | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/modules/io/src/mol/pdb_reader.cc b/modules/io/src/mol/pdb_reader.cc index ec0dbaccb..fa0357bed 100644 --- a/modules/io/src/mol/pdb_reader.cc +++ b/modules/io/src/mol/pdb_reader.cc @@ -105,14 +105,15 @@ bool PDBReader::HasNext() // a HELIX/SHEET entry implies a next model. while (std::getline(in_, curr_line_) && ++line_num_) { StringRef curr_line(curr_line_.c_str(), curr_line_.length()); - if (IEquals(curr_line.substr(0, 6), StringRef("ATOM ", 6)) || + if (curr_line.size()>5 && + (IEquals(curr_line.substr(0, 6), StringRef("ATOM ", 6)) || (!(flags_ & PDB::NO_HETATMS) && IEquals(curr_line.substr(0, 6),StringRef("HETATM ", 6))) || IEquals(curr_line.substr(0, 6),StringRef("ANISOU ", 6)) || IEquals(curr_line.substr(0, 6), StringRef("SHEET ", 6)) || - IEquals(curr_line.substr(0, 6), StringRef("HELIX ", 6))) { + IEquals(curr_line.substr(0, 6), StringRef("HELIX ", 6)))) { return true; - } else if (IEquals(curr_line.substr(0, 3), StringRef("END", 3))) { + } else if (IEquals(curr_line.rtrim(), StringRef("END", 3))) { hard_end_=true; return false; } @@ -153,7 +154,7 @@ void PDBReader::Import(mol::EntityHandle& ent, if (curr_line.size()<3) { continue; } - if (IEquals(curr_line.substr(0, 3), StringRef("END", 3))) { + if (IEquals(curr_line.rtrim(), StringRef("END", 3))) { hard_end_=true; go_on=false; break; diff --git a/modules/io/src/mol/pdb_writer.cc b/modules/io/src/mol/pdb_writer.cc index 9251f42b2..8e461a56e 100644 --- a/modules/io/src/mol/pdb_writer.cc +++ b/modules/io/src/mol/pdb_writer.cc @@ -207,7 +207,7 @@ void PDBWriter::Write(const mol::AtomHandleList& atoms) PDBWriter::~PDBWriter() { - outstream_ << "END"; + outstream_ << "END "; } }} -- GitLab