63be75a0d0ab26d777b1ba549a40feb9cb9500e5
max
  Tue Feb 18 13:04:11 2014 -0800
making hgTables gbib ready, refs #11957
diff --git src/hg/lib/trackDbCustom.c src/hg/lib/trackDbCustom.c
index c7b0bd8..72a2a27 100644
--- src/hg/lib/trackDbCustom.c
+++ src/hg/lib/trackDbCustom.c
@@ -1261,37 +1261,43 @@
 struct tdbExtras *extras = tdb->tdbExtras;
 if (extras)
     return extras->membership;
 return tdbExtrasGet(tdb)->membership;
 }
 
 void tdbExtrasMembershipSet(struct trackDb *tdb,struct _membership *membership)
 // Sets the subtrack membership for later retrieval.
 {
 tdbExtrasGet(tdb)->membership = membership;
 }
 
 char *tdbBigFileName(struct sqlConnection *conn, struct trackDb *tdb)
 // Return file name associated with bigWig.  Do a freeMem on returned string when done.
 {
+char *ret;
 char *fileName = trackDbSetting(tdb, "bigDataUrl"); // always takes precedence
 if (fileName != NULL)
-    return cloneString(fileName);
+    ret = cloneString(fileName);
 
 char query[256];
 sqlSafef(query, sizeof(query), "select fileName from %s", tdb->table);
-return sqlQuickString(conn, query);
+ret = sqlQuickString(conn, query);
+
+// replace /gbdb if needed
+char *rewriteRet = hReplaceGbdb(ret);
+freeMem(ret);
+return rewriteRet;
 }
 
 static void rTdbTreeAllowPack(struct trackDb *tdb)
 // Force this tdb and all children to allow pack/squish
 {
 tdb->canPack = TRUE;
 struct trackDb *childTdb = tdb->subtracks;
 for ( ;childTdb!=NULL;childTdb=childTdb->next)
     rTdbTreeAllowPack(childTdb);
 }
 
 boolean rTdbTreeCanPack(struct trackDb *tdb)
 // Trees can pack as all or none, since they can share vis.
 {
 if (tdb->canPack == FALSE)