eec0b3f059c70b2e414e8c0ecdae5535039a92e7 braney Tue Nov 18 14:28:00 2014 -0800 make sure that description HTML ends in .html, but not twice. #13516 diff --git src/hg/lib/trackHub.c src/hg/lib/trackHub.c index 429841b..ff7bf60 100644 --- src/hg/lib/trackHub.c +++ src/hg/lib/trackHub.c @@ -896,32 +896,37 @@ hashReplace(tdb->settingsHash, "group", tdb->grp); } } static void addOneDescription(char *trackDbFile, struct trackDb *tdb) /* Fetch tdb->track's html description and store in tdb->html. */ { /* html setting should always be set because we set it at load time */ char *htmlName = trackDbSetting(tdb, "html"); if (htmlName == NULL) return; char *simpleName = hubConnectSkipHubPrefix(htmlName); char *url = trackHubRelativeUrl(trackDbFile, simpleName); char buffer[10*1024]; +char *fixedUrl = url; +if (!endsWith(url, ".html")) + { safef(buffer, sizeof buffer, "%s.html", url); -tdb->html = netReadTextFileIfExists(buffer); + fixedUrl = buffer; + } +tdb->html = netReadTextFileIfExists(fixedUrl); freez(&url); } void trackHubAddDescription(char *trackDbFile, struct trackDb *tdb) /* Fetch tdb->track's html description (or nearest ancestor's non-empty description) * and store in tdb->html. */ { addOneDescription(trackDbFile, tdb); if (isEmpty(tdb->html)) { struct trackDb *parent; for (parent = tdb->parent; isEmpty(tdb->html) && parent != NULL; parent = parent->parent) { addOneDescription(trackDbFile, parent); if (isNotEmpty(parent->html))