5de42e2798508dec62b4b89ff15d4966e1ae32da
braney
Tue Feb 24 10:03:24 2026 -0800
the printing of each hub that is in search results is now protected by errCatching so errors will not derail the whole process refs #37100
diff --git src/hg/hgHubConnect/hgHubConnect.c src/hg/hgHubConnect/hgHubConnect.c
index 6a80d7399fe..087bc6f39c9 100644
--- src/hg/hgHubConnect/hgHubConnect.c
+++ src/hg/hgHubConnect/hgHubConnect.c
@@ -1232,32 +1232,37 @@
* Skip this hub. */
continue;
}
slAddHead(&hubList, hubInfo);
}
slSort(&hubList, hubEntryCmp);
slTime = clock1000();
for (hubInfo = hubList; hubInfo != NULL; hubInfo = hubInfo->next)
{
struct hubSearchText *searchResult = NULL;
if (searchResultHash != NULL)
{
searchResult = (struct hubSearchText *) hashMustFindVal(searchResultHash, hubInfo->hubUrl);
}
+ struct errCatch *errCatch = errCatchNew();
+ if (errCatchStart(errCatch))
printOutputForHub(hubInfo, searchResult, count);
+ errCatchEnd(errCatch);
+ if (!errCatch->gotError)
count++;
+ errCatchFree(&errCatch);
}
printOutputForHubTime = clock1000();
if (measureTiming)
printf("hgHubConnect: printOutputForHubTime before js execution: %lu millis
\n", printOutputForHubTime - slTime);
printHubListFooter();
}
if (hubsToPrint != NULL)
{
/* Write out the list of hubs in a single table inside a div that will be hidden by
* javascript. This table is used (before being hidden) to set common column widths for
* the individual hub tables when they're split by detailed search results. */
printf("