9fd202b891f2e2d5be9cfa807e5d5ba15e7fc02d hiram Fri Nov 21 15:59:50 2025 -0800 protect the hs1 assembly on the outlinks with db=hs1 instead of genome=hs1 refs #36540 diff --git src/hg/hgHubConnect/hgHubConnect.c src/hg/hgHubConnect/hgHubConnect.c index a1a3d73f855..60005a96b98 100644 --- src/hg/hgHubConnect/hgHubConnect.c +++ src/hg/hgHubConnect/hgHubConnect.c @@ -137,48 +137,56 @@ int charCount = 0; struct slName *genome = genomes; for(; genome; genome = genome->next) { char *trimmedName = trackHubSkipHubName(genome->name); char *shortName = cloneString(trimmedName); // If even the first element is too long, truncate its short name. if (genome==genomes && strlen(trimmedName) > GENLISTWIDTH) shortName[GENLISTWIDTH] = 0; // append to dyShortHtml if necessary if (charCount == 0 || (charCount+strlen(trimmedName)<=GENLISTWIDTH)) { if (withLink) { + if (hubConnectIsCurated(genome->name)) { + dyStringPrintf(dyShortHtml,"%s" , genome->name, hubUrl, genome->name, shortName); + } else { dyStringPrintf(dyShortHtml,"%s" , genome->name, hubUrl, genome->name, shortName); + } // https://hgdownload-test.gi.ucsc.edu/hubs/GCA/009/914/755/GCA_009914755.4/hub.txt if (withPaste) dyStringPrintf(dyShortHtml, linkHtml, hubUrl); } else dyStringPrintf(dyShortHtml,"%s" , shortName); dyStringPrintf(dyShortHtml,", "); } freeMem(shortName); charCount += strlen(trimmedName); // always append to dyLongHtml if (withLink) { + if (hubConnectIsCurated(genome->name)) { + dyStringPrintf(dyLongHtml,"%s" , genome->name, hubUrl, genome->name, trimmedName); + } else { dyStringPrintf(dyLongHtml,"%s" , genome->name, hubUrl, genome->name, trimmedName); + } if (withPaste) dyStringPrintf(dyLongHtml, linkHtml, hubUrl); } else dyStringPrintf(dyLongHtml,"%s" , trimmedName); if (genome->next) { dyStringPrintf(dyLongHtml,", "); } } char *longHtml = dyStringCannibalize(&dyLongHtml); char *shortHtml = dyStringCannibalize(&dyShortHtml);