Right now, perf. tests' results page tries to load both local and remote files. As a result, when your computer is connected to a really slow network (e.g. public WiFi), it could take ages to load because it pauses the parser. We should dynamically load scripts asynchronously.
Created attachment 167394 [details] Patch
Comment on attachment 167394 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=167394&action=review > PerformanceTests/resources/results-template.html:514 > +(function () { You probably want to move this whole block close to the top of the file so that we start doing the network request ASAP. > PerformanceTests/resources/results-template.html:538 > + loadScript(prefix + '/' + plugins[i], function () { > + numberOfLoadedPlugins++; > + if (numberOfLoadedPlugins == plugins.length) > + init(); > + }, (function (plugin) { > + return function () { alert("Failed to load " + plugin); } > + })(prefixes[i])); These nested function calls are really hard to read. Can you make a local named helper function? > PerformanceTests/resources/results-template.html:542 > + var prefixes = ['%AbsolutePathToWebKitTrunk%', 'https://svn.webkit.org/repository/webkit/trunk']; Instead of trying both, could you try the local one first and only do the network one if that fails? The local once should error out pretty quickly when it's not available. > PerformanceTests/resources/results-template.html:556 > + loadScript(prefixes[i] + '/' + jQuery, (function (prefix) { > + return function () { > + if (!startedLoadingPlugins) > + loadPlugins(prefix); > + startedLoadingPlugins = true; > + } > + })(prefixes[i]), function () { > + numberOfFailures++; > + if (numberOfFailures == prefixes.length) > + alert("Failed to load jQuery."); > + }); Ditto. Hard to read. It would also help if you put the second argument to loadScript on a newline after the comma.
Committed r130669: <http://trac.webkit.org/changeset/130669>