06d7be056190c14b85e71bc12523f18ea6815b5e
markd
  Mon Dec 7 00:50:29 2020 -0800
BLAT mmap index support merge with master

diff --git src/hg/hgTracks/bigBedTrack.c src/hg/hgTracks/bigBedTrack.c
index be7bb74..fcfcf31 100644
--- src/hg/hgTracks/bigBedTrack.c
+++ src/hg/hgTracks/bigBedTrack.c
@@ -229,31 +229,31 @@
     filter->fieldNum = 23;
     filter->comparisonType = COMPARE_HASH_LIST_OR;
     hash = newHash(5);
     filter->valueHash = hash;
     filter->numValuesInHash = 1;
     hashStore(hash, setString);
     }
 }
 
 struct bigBedFilter *bigBedBuildFilters(struct cart *cart, struct bbiFile *bbi, struct trackDb *tdb)
 /* Build all the numeric and filterBy filters for a bigBed */
 {
 struct bigBedFilter *filters = NULL, *filter;
 struct trackDbFilter *tdbFilters = tdbGetTrackNumFilters(tdb);
 
-if ((tdbFilters == NULL) && !trackDbSettingOn(tdb, "noScoreFilter"))
+if ((tdbFilters == NULL) && !trackDbSettingOn(tdb, "noScoreFilter") && (bbi->definedFieldCount >= 5))
     {
     AllocVar(filter);
     slAddHead(&filters, filter);
     filter->fieldNum = 4;
     filter->comparisonType = COMPARE_MORE;
     char buffer[2048];
     safef(buffer, sizeof buffer, "%s.scoreFilter", tdb->track);
     filter->value1 = cartUsualDouble(cart, buffer, 0.0);
     }
 
 for(; tdbFilters; tdbFilters = tdbFilters->next)
     {
     if ((filter = bigBedMakeNumberFilter(cart, bbi, tdb, tdbFilters->name, NULL, tdbFilters->fieldName)) != NULL)
         slAddHead(&filters, filter);
     }