9c21039dcd0fee54fdfd30253bc0088597df90e3
braney
  Sun Feb 25 11:48:47 2024 -0800
another attempt to finish #19984

diff --git src/hg/lib/trackDbCustom.c src/hg/lib/trackDbCustom.c
index 6ff6c00..6c8f683 100644
--- src/hg/lib/trackDbCustom.c
+++ src/hg/lib/trackDbCustom.c
@@ -733,31 +733,37 @@
      && !startsWith("encodeGencodeRaceFrags", tdb->track)) // SPECIAL CASE should fix in trackDb!
     cType = cfgGenePred;
 else if (sameWord("bedLogR",type)
      ||  sameWord("peptideMapping", type))
     cType = cfgBedScore;
 // This is a catch-all for big* types that are not special-cased above.  big* types after this
 // point are assumed to be flavors of bigBed.
 else if (startsWith("bed ", type) || startsWith("big", type) || startsWith("bedDetail", type))
     {
     if (trackDbSetting(tdb, "bedFilter") != NULL)
         cType = cfgBedFilt;
     else if (!startsWith("big", type) || startsWith("bigBed", type))
         {
         char *words[3];
         int wordCount = chopLine(cloneString( type), words);
-        if ((  ((wordCount > 1) && (atoi(words[1]) >= 5))
+        if (sameString("bigBed", type) && (wordCount == 1)) // no following words
+            {
+            cType = cfgBedScore;
+	    if (!bedHasFilters(tdb))
+		cType = cfgNone;
+            }
+        else if ((  ((wordCount > 1) && (atoi(words[1]) >= 5))
             || trackDbSetting(tdb, "scoreMin") != NULL)
         &&  // Historically needed 'bed n .' but encode didn't follow bed n .
             (  (wordCount >= 3)
             || (!tdbIsTrackUiTopLevel(tdb) && trackDbSettingClosestToHome(tdb, "wgEncode"))))
             {
             cType = cfgBedScore;
 
 	    if (!bedScoreHasCfgUi(tdb))
 		cType = cfgNone;
 
 	    // FIXME: UGLY SPECIAL CASE should be handled in trackDb!
 	    else if (startsWith("encodeGencodeIntron", tdb->track))
 		cType = cfgNone;
 	    }
 	}