bd6030cf816b27763b3f1d46b78895116c9317a2
angie
Fri Jan 17 11:11:43 2020 -0800
Fix dumb bug I introduced 3 months ago (30720cca) that broke VCF FILTER when header defines exactly one filter. refs #21805
diff --git src/hg/lib/vcfUi.c src/hg/lib/vcfUi.c
index ee4a163..8b6c592 100644
--- src/hg/lib/vcfUi.c
+++ src/hg/lib/vcfUi.c
@@ -256,33 +256,33 @@
safef(cartVar, sizeof(cartVar), "%s." VCF_MIN_QUAL_VAR, name);
cgiMakeDoubleVar(cartVar, minQual, 10);
printf("
\n");
}
static void vcfCfgFilterColumn(struct cart *cart, struct trackDb *tdb, struct vcfFile *vcff,
char *name, boolean parentLevel)
/* Show controls for filtering by value of VCF's FILTER column, which uses values defined
* in the header. */
{
int filterCount = slCount(vcff->filterDefs);
if (filterCount < 1)
return;
printf("Exclude variants with these FILTER values:
\n");
char cartVar[1024];
+safef(cartVar, sizeof(cartVar), "%s."VCF_EXCLUDE_FILTER_VAR, name);
if (slCount(vcff->filterDefs) > 1)
{
- safef(cartVar, sizeof(cartVar), "%s."VCF_EXCLUDE_FILTER_VAR, name);
jsMakeCheckboxGroupSetClearButton(cartVar, TRUE);
puts(" ");
jsMakeCheckboxGroupSetClearButton(cartVar, FALSE);
}
char *values[filterCount];
char *labels[filterCount];
int i;
struct vcfInfoDef *filt;
for (i=0, filt=vcff->filterDefs; filt != NULL; i++, filt = filt->next)
{
values[i] = filt->key;
struct dyString *dy = dyStringNew(0);
dyStringAppend(dy, filt->key);
if (isNotEmpty(filt->description))
dyStringPrintf(dy, " (%s)", filt->description);