a6fc30fa49ef07dc75cdeff0423b7b70fe28889d
braney
  Thu Sep 9 13:53:50 2021 -0700
oops.. a little polish on the previous commit

diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index af6bb42..efb5846 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -6528,33 +6528,43 @@
 int count = 0;
 struct trackDbFilter *trackDbFilters = tdbGetTrackTextFilters(tdb);
 if (trackDbFilters)
     {
     puts("<BR>");
     struct trackDbFilter *filter = NULL;
     struct sqlConnection *conn = NULL;
     if (!isHubTrack(db))
         conn = hAllocConnTrack(db, tdb);
     struct asObject *as = asForTdb(conn, tdb);
     hFreeConn(&conn);
     while ((filter = slPopHead(&trackDbFilters)) != NULL)
         {
         char *trackDbLabel = getLabelSetting(cart, tdb, filter->fieldName);
         char *value = cartUsualStringClosestToHome(cart, tdb, FALSE, filter->name, filter->setting);
+        if (as != NULL)
+            {
             struct asColumn *asCol = asColumnFind(as, filter->fieldName);
-        if (asCol == NULL)
+            if (asCol != NULL)
+                {
+                if (trackDbLabel == NULL)
+                    trackDbLabel = asCol->comment;
+                }
+            else if (defaultFieldLocation(filter->fieldName) < 0)
                 errAbort("Building filter on field %s which is not in AS file.", filter->fieldName);
+            }
+        if (trackDbLabel == NULL)
+            trackDbLabel = filter->fieldName;
 
         count++;
         printf("<P><B>Filter items in '%s' field:</B> ", trackDbLabel);
 
         char cgiVar[128];
         safef(cgiVar,sizeof(cgiVar),"%s.%s",tdb->track,filter->name);
         cgiMakeTextVar(cgiVar, value, 45);
 
         char *setting = getFilterType(cart, tdb, filter->fieldName, FILTERTEXT_WILDCARD);
         safef(cgiVar,sizeof(cgiVar),"%s.%s.%s",tdb->track,FILTER_TYPE_NAME_LOW, filter->fieldName);
         printf(" using ");
         printf("<SELECT name='%s'> ", cgiVar);
         printf("<OPTION %s>%s</OPTION>", sameString(setting, FILTERTEXT_WILDCARD) ? "SELECTED" : "",  FILTERTEXT_WILDCARD );
         printf("<OPTION %s>%s</OPTION>", sameString(setting, FILTERTEXT_REGEXP) ? "SELECTED" : "",  FILTERTEXT_REGEXP );
         printf("</SELECT>");