diff --git a/modules/io/src/seq/fasta_io_handler.cc b/modules/io/src/seq/fasta_io_handler.cc index c15f6debb4f49b4c182a62201c6695677a628ba2..48e7d474de7717f83ab92eb1cbe187b6530308da 100644 --- a/modules/io/src/seq/fasta_io_handler.cc +++ b/modules/io/src/seq/fasta_io_handler.cc @@ -111,7 +111,7 @@ void FastaIOHandler::Import(seq::SequenceList& aln, aln.AddSequence(seq); seq_count+=1; } catch (seq::InvalidSequence& e) { - throw e; + throw seq::InvalidSequence("Failed for sequence with name " + name + ": " + e.what()); } } else { throw IOException("Bad FASTA file: Sequence is empty."); diff --git a/modules/seq/base/src/invalid_sequence.hh b/modules/seq/base/src/invalid_sequence.hh index b7162169fc2433f1a82960161cc5a90c740ae0f2..7e1795cfb922d355fc49f14a2a2f436c49108c10 100644 --- a/modules/seq/base/src/invalid_sequence.hh +++ b/modules/seq/base/src/invalid_sequence.hh @@ -31,6 +31,9 @@ public: InvalidSequence() : Error("Sequence String contains illegal characters. Must " "be one of [A-Za-z?-].") { } + + InvalidSequence(const String& custom_msg) + : Error(custom_msg) {} }; class DLLEXPORT InvalidAlignment : public Error {