X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=sam_header.c;h=d348d10e89b0aa26a1da127b83a1d86091f02763;hb=ccb7838cb53bf0ca6917a77f7991d940057c12db;hp=f4c8a3bb65d8c52159c16b0a92e1c4d2528e4feb;hpb=ea89c550a4ca078a462dc66dfcf77e65b09e1f2f;p=samtools.git diff --git a/sam_header.c b/sam_header.c index f4c8a3b..d348d10 100644 --- a/sam_header.c +++ b/sam_header.c @@ -434,8 +434,14 @@ static int sam_header_line_validate(HeaderLine *hline) tag = tags->data; if ( !tag_exists(tag->key,required_tags[itype]) && !tag_exists(tag->key,optional_tags[itype]) ) { - debug("Unknown tag [%c%c] for [%c%c].\n", tag->key[0],tag->key[1], hline->type[0],hline->type[1]); - return 0; + // Lower case tags are user-defined values. + if( !(islower(tag->key[0]) || islower(tag->key[1])) ) + { + // Neither is lower case, but tag was not recognized. + debug("Unknown tag [%c%c] for [%c%c].\n", tag->key[0],tag->key[1], hline->type[0],hline->type[1]); + // return 0; // Even unknown tags are allowed - for forward compatibility with new attributes + } + // else - allow user defined tag } tags = tags->next; }