4cc51edbbb70a41e84029fc8d5334c3d3d9d2ef2 angie Tue Dec 6 11:39:42 2016 -0800 An unintended side effect of adding plain VCF recognition to customTrackTypeFromBigFile was that customTrackIsBigData started returning true for plain VCF, which tripped up customPp and customFactory code. Fix by excluding plain VCF from customTrackIsBigData. fixes #18503 diff --git src/hg/lib/customTrack.c src/hg/lib/customTrack.c index d9a70e1..1beeed7 100644 --- src/hg/lib/customTrack.c +++ src/hg/lib/customTrack.c @@ -673,31 +673,32 @@ if (endsWith(fileName, ".vcf.gz")) return cloneString("vcfTabix"); if (endsWith(fileName, ".vcf")) return cloneString("vcf"); return NULL; } boolean customTrackIsBigData(char *fileName) /* Return TRUE if fileName has a suffix that we recognize as a bigDataUrl track type. */ { char *fileNameDecoded = cloneString(fileName); cgiDecode(fileName, fileNameDecoded, strlen(fileName)); boolean result; char *type = customTrackTypeFromBigFile(fileNameDecoded); -result = (type!=NULL); +// exclude plain VCF (as opposed to vcfTabix) from bigData treatment +result = (type != NULL && differentString(type, "vcf")); freeMem(type); freeMem(fileNameDecoded); return result; } static char *prepBigData(struct cart *cart, char *fileName, char *binVar, char *fileVar) /* Pass data's memory offset and size through to customFactory */ { if (!customTrackIsBigData(fileName)) return NULL; char buf[1024]; char *cFBin = cartOptionalString(cart, binVar); if (cFBin) {