1f8adb2e2330efa72300e9e4b80095be31746168 chmalee Wed Jan 21 14:19:39 2026 -0800 Encode the hubUrl on hgHubConnect retry hub button so if the url is bogus and has quotes it does not mess up the rest of the javascript, refs #36936 diff --git src/hg/hgHubConnect/hgHubConnect.c src/hg/hgHubConnect/hgHubConnect.c index 8a1e4e07df5..3751c99cef7 100644 --- src/hg/hgHubConnect/hgHubConnect.c +++ src/hg/hgHubConnect/hgHubConnect.c @@ -355,31 +355,31 @@ boolean hubHasError = (!isEmpty(hub->errorMessage)); if (hubHasError) { ourCellStart(); printf("<span class=\"hubError\">ERROR: %s </span>" "<a TARGET=_BLANK href=\"../goldenPath/help/hgTrackHubHelp.html#Debug\">Debug Help</a>\n", hub->errorMessage); safef(id, sizeof id, "hubClearButton%d", count); // give people a chance to clear the error printf("<input name=\"hubClearButton\" id='%s' " "class=\"hubButton\" type=\"button\" value=\"Retry Hub\">" , id); jsOnEventByIdF("click", id, "document.resetHubForm.elements['hubCheckUrl'].value='%s';" - "document.resetHubForm.submit(); return true;", hub->hubUrl); + "document.resetHubForm.submit(); return true;", javaScriptLiteralEncode(hub->hubUrl)); ourCellEnd(); } else if (hub->trackHub != NULL) { if (hub->trackHub->descriptionUrl != NULL) ourPrintCellLink(hub->trackHub->longLabel, hub->trackHub->descriptionUrl); else ourPrintCell(hub->trackHub->longLabel); } else ourPrintCell(""); if (hub->trackHub != NULL) printGenomes(hub->trackHub, count, !hubHasError);