21563551af4b927ca8f23ca20d48814bfd9939e0 gperez2 Sat Sep 19 14:10:47 2026 -0700 Clarify wording of hgTrackUi's missing-track-name message. refs #38192 Co-Authored-By: Claude Sonnet 5 diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index d160d94b778..ad5c3dbea05 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -4613,33 +4613,33 @@ * 2021-06-21 - Hiram */ if (issueBotWarning) { char *ip = getenv("REMOTE_ADDR"); botDelayMessage(ip, botDelayMillis); } cart = theCart; /* The track name is not kept in the cart, so it has to come with the request. Without it * there is no page to draw, and saying so beats the bare hash lookup failure that a * hand-edited or truncated URL used to produce. A missing parameter is bad input rather * than a program error, so hUserAbort, which keeps it out of the stack dumps. */ track = cartOptionalString(cart, "g"); if (isEmpty(track)) - hUserAbort("This page needs to know which track to show, and the address it was reached by " - "does not name one. Open a track's settings from the browser, or add the track " - "name to the address with the g parameter, e.g. hgTrackUi?db=hg38&g=knownGene"); + hUserAbort("This page's address does not include a track name. Add the track name to the " + "address with the g parameter, e.g. hgTrackUi?db=hg38&g=knownGene, or open a " + "track's settings from the Genome Browser."); getDbAndGenome(cart, &database, &ignored, NULL); initGenbankTableNames(database); chromosome = cartUsualString(cart, "c", hDefaultChrom(database)); trackHash = trackHashMakeWithComposites(database,chromosome,&tdbList,FALSE); /* Handle dup of track related stuff */ char *dupeName = handleDupOp(track, trackHash); if (dupeName != NULL) track = dupeName; struct dupTrack *dupList = dupTrackListFromCart(cart); char *dupWholeName = NULL; boolean isDup = isDupTrack(track); if (isDup) { dupWholeName = track;