03c6f92bbb5b7240805877bb3e7ca3dc43fdc3f9
braney
  Mon Oct 19 09:09:18 2020 -0700
make sure clinvar submissions will work on GBiB.

diff --git src/hg/hgc/clinvarSubLolly.c src/hg/hgc/clinvarSubLolly.c
index 31c8ca7..028017b 100644
--- src/hg/hgc/clinvarSubLolly.c
+++ src/hg/hgc/clinvarSubLolly.c
@@ -16,31 +16,31 @@
 "Benign",
 "Likely Benign",
 "Uncertain significance",
 "Likely pathogenic",
 "Pathogenic",
 };
 
 void printSubmissions(struct trackDb *tdb, char *chrom, int start, int end, unsigned wantScore, int numSubs, boolean not)
 /* Print out all the submissions at this position that match the 
  * desired score (ie. clinical status).
  * If "not" is true, then print out all submissions that do NOT match score.
  * We're grabbing these records out of a second bigBed that's referenced by
  * "xrefDataUrl" in the trackDb.
  */
 {
-char *xrefDataUrl = trackDbSetting(tdb, "xrefDataUrl");
+char *xrefDataUrl = hReplaceGbdb(trackDbSetting(tdb, "xrefDataUrl"));
 struct bbiFile *bbi = bigBedFileOpen(xrefDataUrl);
 struct asObject *as = bigBedAsOrDefault(bbi);
 struct lm *lm = lmInit(0);
 struct bigBedInterval *bbList = bigBedIntervalQuery(bbi, chrom, start, end, 0, lm);
 
 int count;
 if (not)
     count = slCount(bbList) - numSubs;
 else 
     count = numSubs;
 
 // nothing to print
 if (count == 0)
     return;
 
@@ -68,31 +68,31 @@
 }
 
 void doClinvarSubLolly(struct trackDb *tdb, char *item)
 /* Put up page for clinvarSubLolly track. */
 {
 genericHeader(tdb, NULL);
 struct sqlConnection *conn = NULL;
 
 if (!trackHubDatabase(database))
     conn = hAllocConnTrack(database, tdb);
 
 int start = cartInt(cart, "o");
 int end = cartInt(cart, "t");
 char *chrom = cartString(cart, "c");
 char *fileName = bbiNameFromSettingOrTable(tdb, conn, tdb->table);
-struct bbiFile *bbi = bigBedFileOpen(fileName);
+struct bbiFile *bbi = bigBedFileOpen(hReplaceGbdb(fileName));
 struct lm *lm = lmInit(0);
 struct bigBedInterval *bbList = bigBedIntervalQuery(bbi, chrom, start, end, 0, lm);
 
 struct bigBedInterval *bb;
 char *fields[bbi->fieldCount];
 for (bb = bbList; bb != NULL; bb = bb->next)
     {
     if (!(bb->start == start && bb->end == end))
 	continue;
 
     // our names are unique
     char *name = cloneFirstWordByDelimiterNoSkip(bb->rest, '\t');
     boolean match = (isEmpty(name) && isEmpty(item)) || sameOk(name, item);
     if (!match)
         continue;