From f9953c6a4e56d5f0f2c58b25881f2900d382fdbd Mon Sep 17 00:00:00 2001 From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Fri, 7 May 2010 09:33:29 +0000 Subject: [PATCH] Fixes for SequenceHandle (added some checks) git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2197 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- modules/seq/base/src/impl/sequence_impl.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/modules/seq/base/src/impl/sequence_impl.cc b/modules/seq/base/src/impl/sequence_impl.cc index 69fd3f42f..d57989d95 100644 --- a/modules/seq/base/src/impl/sequence_impl.cc +++ b/modules/seq/base/src/impl/sequence_impl.cc @@ -63,8 +63,13 @@ SequenceImplPtr SequenceImpl::FromString(const String& seq_name, void SequenceImpl::SetString(const String& seq) { - seq_string_=seq; - this->ShiftsFromSequence(); + if (SequenceImpl::IsSequenceStringSane(seq)) { + seq_string_=seq; + this->ShiftsFromSequence(); + } + else { + throw InvalidSequence(); + } } SequenceImpl::SequenceImpl(const String& seq_name, @@ -207,7 +212,7 @@ void SequenceImpl::AttachView(const mol::EntityView& view) { static const char* msg="Expected 1 chain, but %d chains found"; attached_view_=view; - if (attached_view_.GetChainCount()!=1) { + if (view.IsValid() && attached_view_.GetChainCount()!=1) { throw IntegrityError(str(format(msg) % attached_view_.GetChainCount())); } } -- GitLab