| Index: tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| diff --git a/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py b/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| index 049b0786d8534829381fd52cb638ab97fcd35c52..497ac73bcfdaf4e8ce4251237a9e45032255db75 100644
|
| --- a/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| +++ b/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| @@ -160,26 +160,27 @@ class ChromeBrowserBackend(browser_backend.BrowserBackend):
|
| for e in self._extensions_to_load:
|
| if not e.extension_id in self.extension_backend:
|
| return False
|
| - extension_object = self.extension_backend[e.extension_id]
|
| - try:
|
| - res = extension_object.EvaluateJavaScript(
|
| - extension_ready_js % e.extension_id)
|
| - except exceptions.EvaluateException:
|
| - # If the inspected page is not ready, we will get an error
|
| - # when we evaluate a JS expression, but we can just keep polling
|
| - # until the page is ready (crbug.com/251913).
|
| - res = None
|
| -
|
| - # TODO(tengs): We don't have full support for getting the Chrome
|
| - # version before launch, so for now we use a generic workaround to
|
| - # check for an extension binding bug in old versions of Chrome.
|
| - # See crbug.com/263162 for details.
|
| - if res and extension_object.EvaluateJavaScript(
|
| - 'chrome.runtime == null'):
|
| - extension_object.Reload()
|
| - if not res:
|
| - return False
|
| + for extension_object in self.extension_backend[e.extension_id]:
|
| + try:
|
| + res = extension_object.EvaluateJavaScript(
|
| + extension_ready_js % e.extension_id)
|
| + except exceptions.EvaluateException:
|
| + # If the inspected page is not ready, we will get an error
|
| + # when we evaluate a JS expression, but we can just keep polling
|
| + # until the page is ready (crbug.com/251913).
|
| + res = None
|
| +
|
| + # TODO(tengs): We don't have full support for getting the Chrome
|
| + # version before launch, so for now we use a generic workaround to
|
| + # check for an extension binding bug in old versions of Chrome.
|
| + # See crbug.com/263162 for details.
|
| + if res and extension_object.EvaluateJavaScript(
|
| + 'chrome.runtime == null'):
|
| + extension_object.Reload()
|
| + if not res:
|
| + return False
|
| return True
|
| +
|
| if wait_for_extensions and self._supports_extensions:
|
| try:
|
| util.WaitFor(AllExtensionsLoaded, timeout=60)
|
|
|