From: <ds...@us...> - 2013-01-31 22:54:24
|
Revision: 6048 http://sashimi.svn.sourceforge.net/sashimi/?rev=6048&view=rev Author: dshteyn Date: 2013-01-31 22:54:18 +0000 (Thu, 31 Jan 2013) Log Message: ----------- InteractParser: fix segfault on unknown enzyme. Auto update ntt and nmc info based on sample_enzyme tag when recognized. Modified Paths: -------------- branches/4-6/trans_proteomic_pipeline/src/Visualization/InteractParser/InteractParser.cxx Modified: branches/4-6/trans_proteomic_pipeline/src/Visualization/InteractParser/InteractParser.cxx =================================================================== --- branches/4-6/trans_proteomic_pipeline/src/Visualization/InteractParser/InteractParser.cxx 2013-01-31 22:51:14 UTC (rev 6047) +++ branches/4-6/trans_proteomic_pipeline/src/Visualization/InteractParser/InteractParser.cxx 2013-01-31 22:54:18 UTC (rev 6048) @@ -565,9 +565,14 @@ if (tag->isStart() && !strcmp(tag->getName(), "sample_enzyme")) { - if (enzyme_ == NULL) { - enzyme_ = (new ProteolyticEnzymeFactory())->getProteolyticEnzyme(tag->getAttributeValue("name")); + if ((enzyme_ = (new ProteolyticEnzymeFactory())->getProteolyticEnzyme(tag->getAttributeValue("name"))) == NULL) { + cerr << "ERROR: Unrecognized enzyme " << tag->getAttributeValue("name") << " - please specify enzyme with -E option" << endl; + exit(1); } + else if (enz_ == NULL) { + enz_ = new char[strlen(tag->getAttributeValue("name"))+1]; + strcpy(enz_, tag->getAttributeValue("name")); + } enzyme_->writePepXMLTags(fout); skip_tag = True; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |