bb22c86cb94b3ae075ca7b9b344f4e7d29737936
Merge parents 06e4723 31f492f
kate
  Tue Feb 12 11:07:11 2013 -0800
Handle supertrack names in hub consistently; the hub_ prefix is stripped before adding to trackDb settings.  Bug #9751: Error when superTrack children use 'parent' setting superTrack doesnt render for Hubs
diff --cc src/hg/lib/trackDbCustom.c
index 3d70d0b,3d70d0b..7bb325f
--- src/hg/lib/trackDbCustom.c
+++ src/hg/lib/trackDbCustom.c
@@@ -572,35 -572,35 +572,36 @@@
      freeMem(words[0]);
      }
  /* adjust settings on supertrack members after verifying they have
   * a supertrack configured in this trackDb */
  for (tdb = tdbList; tdb != NULL; tdb = tdb->next)
      {
      if (tdbIsSuperTrack(tdb) || tdb->parent != NULL)
          continue;
      setting = trackDbLocalSetting(tdb, "parent");
      if (!setting)
          setting = trackDbLocalSetting(tdb, "superTrack");  // Old style
      if (!setting)
          continue;
      wordCt = chopLine(cloneString(setting), words);
      assert(differentString("on", words[0])); // already weeded out "superTrack on"
--    tdb->parent = hashFindVal(superHash, words[0]);
++    char *parentName = maybeSkipHubPrefix(words[0]);
++    tdb->parent = hashFindVal(superHash, parentName);
      if (tdb->parent)
          {
          tdbMarkAsSuperTrackChild(tdb);
--        tdb->parentName = cloneString(words[0]);
++        tdb->parentName = cloneString(parentName);
          if (wordCt > 1)
              tdb->visibility = max(0, hTvFromStringNoAbort(words[1]));
          }
      freeMem(words[0]);
      }
  hashFree(&superHash);
  }
  
  char *trackDbOrigAssembly(struct trackDb *tdb)
  /* return setting from trackDb, if any */
  {
  return (trackDbSetting(tdb, "origAssembly"));
  }
  
  void trackDbPrintOrigAssembly(struct trackDb *tdb, char *database)