| 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 cc9d4378064bcb62097d4d6df5b49aca4d38c94f..faf207dccd6b955b658beca7ceba6f382e4640b8 100644
|
| --- a/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| +++ b/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
|
| @@ -24,6 +24,7 @@ from telemetry.core.backends.chrome import extension_backend
|
| from telemetry.core.backends.chrome import system_info_backend
|
| from telemetry.core.backends.chrome import tab_list_backend
|
| from telemetry.core.backends.chrome import tracing_backend
|
| +from telemetry.core.backends.chrome import tracing_timeline_data
|
| from telemetry.unittest import options_for_unittests
|
|
|
|
|
| @@ -291,17 +292,21 @@ class ChromeBrowserBackend(browser_backend.BrowserBackend):
|
|
|
| def StopTracing(self):
|
| """ Stops tracing and returns the result as TimelineData object. """
|
| - for (i, debugger_url) in enumerate(self._browser.tabs):
|
| + tab_ids_list = []
|
| + for (i, _) in enumerate(self._browser.tabs):
|
| tab = self.tab_list_backend.Get(i, None)
|
| if tab:
|
| success = tab.EvaluateJavaScript(
|
| - "console.time('" + debugger_url + "');" +
|
| - "console.timeEnd('" + debugger_url + "');" +
|
| + "console.time('" + tab.id + "');" +
|
| + "console.timeEnd('" + tab.id + "');" +
|
| "console.time.toString().indexOf('[native code]') != -1;")
|
| if not success:
|
| raise Exception('Page stomped on console.time')
|
| - self._tracing_backend.AddTabToMarkerMapping(tab, debugger_url)
|
| - return self._tracing_backend.StopTracing()
|
| + tab_ids_list.append(tab.id)
|
| + trace_events = self._tracing_backend.StopTracing()
|
| + # Augment tab_ids data to trace events.
|
| + event_data = {'traceEvents' : trace_events, 'tabIds': tab_ids_list}
|
| + return tracing_timeline_data.TracingTimelineData(event_data)
|
|
|
| def GetProcessName(self, cmd_line):
|
| """Returns a user-friendly name for the process of the given |cmd_line|."""
|
|
|