f1256eb735a0f31e9495e0f9d5dc3ec95fdf7eda chmalee Tue Nov 8 16:02:49 2022 -0800 Fix negative strand exon number output in Table Browser, refs #30232 diff --git src/hg/lib/featureBits.c src/hg/lib/featureBits.c index b34f53d..4630a73 100644 --- src/hg/lib/featureBits.c +++ src/hg/lib/featureBits.c @@ -527,32 +527,34 @@ if (e > bed->thickStart) e = bed->thickStart; } else { if (e < bed->thickEnd) continue; if (s < bed->thickEnd) s = bed->thickEnd; } fName = "utr3"; } else { fName = "exon"; } if (!doScore || (doScore && bed->score >= scoreThreshold)) { + // the -1 is because we output exon numbers starting at 0 + int exonNum = bed->strand[0] == '+' ? i : count - 1 - i; safef(nameBuf, sizeof(nameBuf), "%s_%s_%d_%d_%s_%d_%c", - bed->name, fName, i, extraSize, bed->chrom, s+1, + bed->name, fName, exonNum, extraSize, bed->chrom, s+1, frForStrand(bed->strand[0])); setRangePlusExtra(db, &fbList, nameBuf, bed->chrom, s, e, bed->strand[0], extraSize, extraSize, chromStart, chromEnd); } } } else { if (doCds) { s = bed->thickStart; e = bed->thickEnd; fName = "cds"; }