e341c576504ab46af7ad7d7a28cd4f81369e0fea
braney
  Mon Sep 1 11:18:57 2025 -0700
working to get quickLifts from genark hubs to work

diff --git src/hg/lib/hdb.c src/hg/lib/hdb.c
index f84057c3ed1..ea5fc3bc252 100644
--- src/hg/lib/hdb.c
+++ src/hg/lib/hdb.c
@@ -1102,30 +1102,37 @@
     safecpy(dbOut, dbOutSize, dbIn);
 safecpy(tableOut, tableOutSize, table);
 }
 
 
 int hChromSize(char *db, char *chromName)
 /* Return size of chromosome. */
 {
 struct chromInfo *ci = mustGetChromInfo(db, chromName);
 return ci->size;
 }
 
 void hNibForChrom(char *db, char *chromName, char retNibName[HDB_MAX_PATH_STRING])
 /* Get .nib file associated with chromosome. */
 {
+if (startsWith("GC", db))
+    {
+    struct trackHubGenome *genome = trackHubGetGenome(db);
+    if (genome->twoBitPath)
+        safef(retNibName, HDB_MAX_PATH_STRING, "%s", genome->twoBitPath);
+    return;
+    }
 if (cfgOptionBooleanDefault("forceTwoBit", TRUE) == TRUE && !trackHubDatabase(db))
     {
     char buf[HDB_MAX_PATH_STRING];
     safef(buf, HDB_MAX_PATH_STRING, "/gbdb/%s/%s.2bit", db, db);
     char *newPath = hReplaceGbdb(buf);
     safecpy(retNibName, HDB_MAX_PATH_STRING, newPath);
     freeMem(newPath);
     return;
     }
 
 if (hDbIsActive(db))
     {
     struct chromInfo *ci = mustGetChromInfo(db, chromName);
     safef(retNibName, HDB_MAX_PATH_STRING, "%s", ci->fileName);
     }