summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorachuith@chromium.org <achuith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-12 21:23:04 +0000
committerachuith@chromium.org <achuith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-12 21:23:04 +0000
commitce684fedcf65b79bb821a6f9c7a18754cc3af345 (patch)
tree7e7941e240b36a564350d8d39f47b115d05b8b5d /tools
parentad4b3128efc7cde51af00502a067b45e5d70d023 (diff)
downloadchromium_src-ce684fedcf65b79bb821a6f9c7a18754cc3af345.zip
chromium_src-ce684fedcf65b79bb821a6f9c7a18754cc3af345.tar.gz
chromium_src-ce684fedcf65b79bb821a6f9c7a18754cc3af345.tar.bz2
Fix a situation where tab creation can throw an exception and we never navigate to about:blank.
BUG=349447 TEST=manual NOTRY=True Review URL: https://codereview.chromium.org/197103004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256655 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r--tools/telemetry/telemetry/core/backends/chrome/cros_browser_backend.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/tools/telemetry/telemetry/core/backends/chrome/cros_browser_backend.py b/tools/telemetry/telemetry/core/backends/chrome/cros_browser_backend.py
index e6cf72d..543c2c0 100644
--- a/tools/telemetry/telemetry/core/backends/chrome/cros_browser_backend.py
+++ b/tools/telemetry/telemetry/core/backends/chrome/cros_browser_backend.py
@@ -431,11 +431,15 @@ class CrOSBrowserBackend(chrome_browser_backend.ChromeBrowserBackend):
else:
# Workaround for crbug.com/329271, crbug.com/334726.
retries = 3
- while not len(self.tab_list_backend):
+ while True:
try:
# Open a new window/tab.
- tab = self.tab_list_backend.New(timeout=30)
+ if len(self.tab_list_backend):
+ tab = self.tab_list_backend[-1]
+ else:
+ tab = self.tab_list_backend.New(timeout=30)
tab.Navigate('about:blank', timeout=10)
+ break
except (exceptions.TabCrashException, util.TimeoutException,
IndexError):
retries -= 1