397351b825b3ea9a7fb6ac7a2f64359166c9ba32
chmalee
  Thu Mar 5 12:25:51 2026 -0800
Oops forgot the usual trackHubDatabase check, refs #36535

diff --git src/hg/lib/web.c src/hg/lib/web.c
index 1bcd7dcd2c1..318bb03f31b 100644
--- src/hg/lib/web.c
+++ src/hg/lib/web.c
@@ -1798,31 +1798,31 @@
 if (db && cgiOptionalString("db"))
     {
     struct dbDb *dbInfo = hDbDb(db);
     if (dbInfo)
         {
         char *bareDb = jsonStringEscape(trackHubSkipHubName(db));
         char *safeOrganism = jsonStringEscape(trackHubSkipHubName(dbInfo->organism));
         char *safeDescription = jsonStringEscape(trackHubSkipHubName(dbInfo->description));
         struct dyString *jsCall = dyStringNew(512);
         dyStringPrintf(jsCall,
             "addRecentGenome({db:'%s', genome:'%s', label:'%s - %s (%s)', commonName:'%s'",
             bareDb, bareDb, safeOrganism, safeDescription, bareDb, safeOrganism);
         if (dbInfo->taxId > 0)
             dyStringPrintf(jsCall, ", taxId:%d", dbInfo->taxId);
         // For hub/GenArk assemblies, include hubUrl and category so hgGateway can route correctly
-        struct trackHubGenome *hubGenome = trackHubGetGenome(db);
+        struct trackHubGenome *hubGenome = trackHubDatabase(db) ? trackHubGetGenome(db) : NULL;
         if (hubGenome && hubGenome->trackHub)
             {
             char *safeHubUrl = jsonStringEscape(hubGenome->trackHub->url);
             dyStringPrintf(jsCall, ", hubUrl:'%s'", safeHubUrl);
             if (startsWith("/gbdb", hubGenome->trackHub->url))
                 dyStringAppend(jsCall, ", category:'UCSC Curated'");
             else
                 dyStringAppend(jsCall, ", category:'Assembly Hub'");
             }
         else
             dyStringAppend(jsCall, ", category:'UCSC Curated'");
         dyStringAppend(jsCall, "});\n");
         jsInline(dyStringContents(jsCall));
         dyStringFree(&jsCall);
         }