commit | b8e0df0bccb6cee5bd774b782023b3207fde6eda | [log] [tgz] |
---|---|---|
author | David Bokan <[email protected]> | Wed May 14 22:03:48 2025 |
committer | Chromium LUCI CQ <[email protected]> | Wed May 14 22:03:48 2025 |
tree | 1e28c47df3fff6c1ffbc530176e35aade3c05b48 | |
parent | a13c85401eb683a9d8806b06e302943ffb849c28 [diff] |
Make history tool resilient to different kinds of async The linked bug was occurring on pages that had a beforeunload handler, though they didn't result in a beforeunload prompt. The reason is that the tool was assuming that a navigation-starting task will have been posted in the call to GoBack|GoForward. However, in the beforeunload case navigation code actually has to wait on a renderer response before deciding on whether to issue the navigation. This CL plumbs through the list of created (but not-yet-started) navigations through the content API, allowing the tool to know how many navigations are expected. It then tracks which of these navigations has started, checking for cancellations via polling. Bug: 415385900 Change-Id: Iee244642016152d9e76fc4ab6903691ef0d23d04 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6533422 Reviewed-by: Alex Gough <[email protected]> Reviewed-by: Charlie Reis <[email protected]> Commit-Queue: David Bokan <[email protected]> Cr-Commit-Position: refs/heads/main@{#1460387}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.