Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1410)

Issue 2953513002: Fix a race between navigation and an interstitial. (Closed)

Created:
3 years, 6 months ago by Avi (use Gerrit)
Modified:
3 years, 6 months ago
Reviewers:
Charlie Reis
CC:
chromium-reviews, jam, nasko+codewatch_chromium.org, darin-cc_chromium.org, creis+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix a race between navigation and an interstitial. When early-exiting NavigationControllerImpl::NavigateToPendingEntry, the interstitial page may have been created but not yet attached itself to the WebContents. In that case, because asking the WebContents for the interstitial won't work, ask the interstitial pages if any of them are attached to the desired WebContents. Even before attaching to the WebContents, the interstitial pages know that. BUG=703655 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2953513002 Cr-Commit-Position: refs/heads/master@{#481698} Committed: https://chromium.googlesource.com/chromium/src/+/668f5234e53dc61582b34a66dda5ef73615db214

Patch Set 1 #

Total comments: 1

Patch Set 2 : with test #

Total comments: 4

Patch Set 3 : docs #

Patch Set 4 : reword #

Unified diffs Side-by-side diffs Delta from patch set Stats (+70 lines, -10 lines) Patch
M content/browser/frame_host/navigation_controller_impl.cc View 1 2 3 1 chunk +12 lines, -4 lines 0 comments Download
M content/browser/web_contents/web_contents_impl_unittest.cc View 1 1 chunk +45 lines, -0 lines 0 comments Download
M content/public/browser/interstitial_page.h View 1 2 1 chunk +7 lines, -4 lines 0 comments Download
M content/public/browser/web_contents.h View 1 2 1 chunk +6 lines, -2 lines 0 comments Download

Messages

Total messages: 33 (23 generated)
Avi (use Gerrit)
Charlie, how do you feel about this one?
3 years, 6 months ago (2017-06-21 00:19:14 UTC) #9
Charlie Reis
Interesting! I didn't even know InterstitialPage::GetIntersitialPage existed. It does seem like a good fit for ...
3 years, 6 months ago (2017-06-21 06:02:31 UTC) #13
Avi (use Gerrit)
On 2017/06/21 06:02:31, Charlie Reis (slow) wrote: > Interesting! I didn't even know InterstitialPage::GetIntersitialPage existed. ...
3 years, 6 months ago (2017-06-21 16:40:23 UTC) #14
Avi (use Gerrit)
Charlie, I have a test now. PTAL.
3 years, 6 months ago (2017-06-21 23:28:54 UTC) #19
Charlie Reis
Thanks, LGTM! Can you also update the comments on the declarations of WebContents::GetInterstitialPage and InterstitialPage::GetInterstitialPage, ...
3 years, 6 months ago (2017-06-22 16:19:38 UTC) #20
Avi (use Gerrit)
Charlie, ptal at the docs. https://codereview.chromium.org/2953513002/diff/20001/content/browser/frame_host/navigation_controller_impl.cc File content/browser/frame_host/navigation_controller_impl.cc (right): https://codereview.chromium.org/2953513002/diff/20001/content/browser/frame_host/navigation_controller_impl.cc#newcode1886 content/browser/frame_host/navigation_controller_impl.cc:1886: // null if the ...
3 years, 6 months ago (2017-06-22 18:08:51 UTC) #23
Charlie Reis
Thanks-- the extra declaration comments help a lot! LGTM with nit. https://codereview.chromium.org/2953513002/diff/20001/content/browser/frame_host/navigation_controller_impl.cc File content/browser/frame_host/navigation_controller_impl.cc (right): ...
3 years, 6 months ago (2017-06-22 21:06:00 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2953513002/60001
3 years, 6 months ago (2017-06-22 21:15:25 UTC) #29
Avi (use Gerrit)
https://codereview.chromium.org/2953513002/diff/20001/content/browser/frame_host/navigation_controller_impl.cc File content/browser/frame_host/navigation_controller_impl.cc (right): https://codereview.chromium.org/2953513002/diff/20001/content/browser/frame_host/navigation_controller_impl.cc#newcode1886 content/browser/frame_host/navigation_controller_impl.cc:1886: // null if the interstitial was shown but not ...
3 years, 6 months ago (2017-06-22 21:46:42 UTC) #30
commit-bot: I haz the power
3 years, 6 months ago (2017-06-22 22:52:37 UTC) #33
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as
https://chromium.googlesource.com/chromium/src/+/668f5234e53dc61582b34a66dda5...

Powered by Google App Engine
This is Rietveld 408576698