f1b022e1885342482ef657f89b62caa1077e38b6
max
  Thu Feb 23 01:29:59 2023 -0800
adding a fix, possibly not an optimal one, to the chromAlias resolution, for cases where there is no alias yet for a sequence, this fix at least avoids a crash in hgTracks, refs #30578

diff --git src/hg/lib/chromAlias.c src/hg/lib/chromAlias.c
index 382c3c6..0f49981 100644
--- src/hg/lib/chromAlias.c
+++ src/hg/lib/chromAlias.c
@@ -495,30 +495,34 @@
     return cloneString(seqName);
 
 unsigned fieldNum = 0;
 for(; fieldNum < chromAliasGlobals.fieldCount; fieldNum++)
     {
     if (sameString(authority, chromAliasGlobals.fields[fieldNum]))
         break;
     }
 
 if (fieldNum >= chromAliasGlobals.fieldCount)
     return cloneString(seqName);
 
 unsigned count = 0;
 for(; aliases && count < fieldNum; count++,aliases = aliases->next)
     ;
+
+if (!aliases)
+    return cloneString(seqName);
+
 if (!isEmpty(aliases->name))
     return cloneString(aliases->name);
 
 return cloneString(seqName);
 }
 
 char *chromAliasGetDisplayChrom(char *db, struct cart *cart, char *seqName)
 /* Return the sequence name to display based on the database and cart. */
 {
 if (trackHubDatabase(db))
     {
     struct trackHubGenome *genome = trackHubGetGenome(db);
 
     return chromAliasFindSingleAlias(seqName, genome->chromAuthority);
     }