10b63ca612535e53b2367d55db1682997b90b7dd
markd
  Thu Feb 20 23:36:31 2014 -0800
added check the GFF3 Derives_from attributes is only specified once per record
diff --git src/lib/gff3.c src/lib/gff3.c
index 5a977bc..4e755d8 100644
--- src/lib/gff3.c
+++ src/lib/gff3.c
@@ -473,30 +473,31 @@
 if (numWords > 3)
     g3a->targetStrand = parseStrand(g3a, words[3]);
 freeMem(words);
 }
 
 static void parseGapAttr(struct gff3Ann *g3a, struct gff3Attr *attr)
 /* parse the Gap attribute */
 {
 checkSingleValAttr(g3a, attr);
 g3a->gap = attr->vals->name;
 }
 
 static void parseDerivesFromAttr(struct gff3Ann *g3a, struct gff3Attr *attr)
 /* parse the Derives_from attribute */
 {
+checkSingleValAttr(g3a, attr);
 g3a->derivesFromId = attr->vals->name;
 }
 
 static void parseNoteAttr(struct gff3Ann *g3a, struct gff3Attr *attr)
 /* parse the Note attribute */
 {
 g3a->notes = attr->vals;
 }
 
 static void parseDbxrefAttr(struct gff3Ann *g3a, struct gff3Attr *attr)
 /* parse the Dbxref attribute */
 {
 g3a->dbxrefs = attr->vals;
 }