Builder names without underscores cause the BuildSelector object to not store the containers in the proper way, displaying all the containers instead of just the one the selected tab is linked with.
An example of this is when viewing results for the Apple builders - the container id and hash that's used in the associated tab are just encoded as URI components (the result of the current platform's resultsDirectoryNameFromBuilderName method), which doesn't work. Chromium doesn't have such problems as the builders' results directories are already replacing whitespace, braces and dots with underscores.
JQuery documentation suggests something similar.
I think it's safe to convert whitespace, braces and dots to underscores for every builder name in ui.results.BuilderSelector.init and use that to link the container with the associated tab.
 - http://docs.jquery.com/UI/Tabs#Ajax_mode
I'm not quite following how to see the actual bug in the garden-o-matic UI.
Created attachment 148130 [details]
Comment on attachment 148130 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=148130&action=review
> + (.):
> + var builderHash = builderName.replace(/[ .()]/g, '_');
This looks very similar to config.resultsDirectoryNameFromBuilderName() for chromium. Maybe put a function in base and call it in both places.
(In reply to comment #3)
> > Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:370
> > + var builderHash = builderName.replace(/[ .()]/g, '_');
> This looks very similar to config.resultsDirectoryNameFromBuilderName() for chromium. Maybe put a function in base and call it in both places.