cc2335c2d1f3f50ff9e1deb19172c2695db65339
hiram
  Thu Mar 24 13:52:45 2022 -0700
correctly link to chromAlias.txt instead of chromAlias.bb to display in the chromInfo page as a link to view refs #27228

diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index 8256556..6da421a 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -10419,40 +10419,45 @@
     {
     cgiSimpleTableRowStart();
     cgiSimpleTableFieldStart();
     puts("Download as file:");
     cgiTableFieldEnd();
     cgiSimpleTableFieldStart();
     if (chromSizesFile)
 	{
         printf("<a href='%s' target=_blank>%s.chrom.sizes.txt</A>", chromSizesFile, trackHubSkipHubName(database));
         puts("&nbsp;&nbsp;");
 	}
     else
         puts("&nbsp");
     cgiTableFieldEnd();
     cgiSimpleTableFieldStart();
-    printf("<a href='%s' target=_blank>%s.chromAlias.txt</A>", hubAliasFile, trackHubSkipHubName(database));
+    char *aliasUrl = cloneString(hubAliasFile);
+    /* this URL reference needs to be a text file to work as a click in the
+     *    html page.  Both files chromAlias.bb and chromAlias.txt exist.
+     */
+    if (endsWith(hubAliasFile, "chromAlias.bb"))
+       aliasUrl = replaceChars(hubAliasFile, "chromAlias.bb", "chromAlias.txt");
+    printf("<a href='%s' target=_blank>%s.chromAlias.txt</A>", aliasUrl, trackHubSkipHubName(database));
     cgiTableFieldEnd();
     cgiTableRowEnd();
     }
 }
 
 void chromInfoPage()
 /* Show list of chromosomes (or scaffolds, etc) on which this db is based. */
 {
-fprintf(stderr, "# DBG chromInfoPage entered\n");
 boolean hasAlias = FALSE;
 char *chromSizesFile = NULL;
 char *aliasFile = NULL;
 if (trackHubDatabase(database))
     {	/* either one of these files present will work */
     aliasFile = trackHubAliasFile(database);
     if (aliasFile)
         {
             hasAlias = TRUE;
         } else {
             aliasFile = trackHubAliasBbFile(database);
             if (aliasFile)
                hasAlias = TRUE;
         }
     chromSizesFile = trackHubChromSizes(database);