b8b17675d4f45ac91897edec324364415d38b64e
braney
  Mon Apr 24 10:49:24 2017 -0700
recognize $D in bigDataUrl's when checking to see if track data is
available

diff --git src/hg/lib/hdb.c src/hg/lib/hdb.c
index 47346e7..8f9b295 100644
--- src/hg/lib/hdb.c
+++ src/hg/lib/hdb.c
@@ -3699,30 +3699,31 @@
 /* fill in supertrack fields, if any in settings */
 trackDbSuperMarkup(tdbList);
 trackDbAddTableField(tdbList);
 return tdbList;
 }
 
 boolean trackDataAccessible(char *database, struct trackDb *tdb)
 /* Return TRUE if underlying data are accessible - meaning the track has either
  * a bigDataUrl with remote URL (http:// etc), a bigDataUrl with an existing local file,
  * or a database table with the same name.
  * Note: this returns FALSE for composite tracks; use this on subtracks or simple tracks. */
 {
 char *bigDataUrl = trackDbSetting(tdb, "bigDataUrl");
 if (bigDataUrl != NULL)
     {
+    bigDataUrl = replaceChars(bigDataUrl, "$D", database);
     if (hasProtocol(bigDataUrl))
         return TRUE;
     else
         {
         char *bigDataUrlLocal = hReplaceGbdb(bigDataUrl);
         boolean exists;
         if (hasProtocol(bigDataUrlLocal))
             exists = udcExists(bigDataUrlLocal);
         else
             exists = fileExists(bigDataUrlLocal);
         freeMem(bigDataUrlLocal);
         return exists;
         }
     }
 else