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

Issue 98373010: Refactor prerender pending swap logic. (Closed)

Created:
7 years ago by davidben
Modified:
7 years ago
Reviewers:
mmenke, tburkard
CC:
chromium-reviews, tburkard+watch_chromium.org, gavinp+prer_chromium.org, cbentzel+watch_chromium.org, dominich+watch_chromium.org, davidben+watch_chromium.org
Visibility:
Public.

Description

Refactor prerender pending swap logic. Convert the timeout to a OneShotTimer. Also rearrange MaybeUsePrerenderedPage and SwapInternal so the latter only does the swap while the former looks up the PrerenderData. Move the merge and timeout callbacks into PendingData so we don't need to pass in callbacks solely for the purpose of cancelling them. This removes events PRERENDER_EVENT_MERGE_RESULT_TIMEOUT_CB and RERENDER_EVENT_MERGE_RESULT_RESULT_CB as they were redundant with TIMED_OUT and MERGE_DONE. BUG=none TEST=no behavior change; PrerenderBrowserTests.* Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=239658

Patch Set 1 #

Patch Set 2 : Remove DCHECKs (can fire with two successive loads in a row) #

Total comments: 10

Patch Set 3 : Move cleanup code #

Total comments: 7

Patch Set 4 : mmenke's comments #

Total comments: 2

Patch Set 5 : Pronouns #

Patch Set 6 : I can order correctly words #

Unified diffs Side-by-side diffs Delta from patch set Stats (+156 lines, -229 lines) Patch
M chrome/browser/prerender/prerender_events.h View 2 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/prerender/prerender_manager.h View 1 2 3 4 chunks +22 lines, -31 lines 0 comments Download
M chrome/browser/prerender/prerender_manager.cc View 1 2 3 4 5 10 chunks +131 lines, -195 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
davidben
Matt asked me to clean up some of the pending swap code separately before doing ...
7 years ago (2013-12-06 19:36:34 UTC) #1
tburkard
Nice cleanup. Looks very elegant now. lgtm To unsubscribe from this group and stop receiving ...
7 years ago (2013-12-06 20:36:24 UTC) #2
mmenke
Won't get to this today, unfortunately. I'll get to it on Monday,
7 years ago (2013-12-06 20:50:32 UTC) #3
mmenke
https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (left): https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc#oldcode597 chrome/browser/prerender/prerender_manager.cc:597: if (prerender_data != swap_candidate && prerender_data->pending_swap()) { I'm confused.... ...
7 years ago (2013-12-09 17:06:35 UTC) #4
mmenke
https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (left): https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc#oldcode597 chrome/browser/prerender/prerender_manager.cc:597: if (prerender_data != swap_candidate && prerender_data->pending_swap()) { On 2013/12/09 ...
7 years ago (2013-12-09 17:13:34 UTC) #5
davidben
https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (left): https://codereview.chromium.org/98373010/diff/20001/chrome/browser/prerender/prerender_manager.cc#oldcode1346 chrome/browser/prerender/prerender_manager.cc:1346: if (validated_url != url_) On 2013/12/09 17:06:36, mmenke wrote: ...
7 years ago (2013-12-09 20:00:31 UTC) #6
mmenke
LGTM (Though I haven't dug into all of the old swap logic, just looked at ...
7 years ago (2013-12-09 21:04:44 UTC) #7
davidben
https://codereview.chromium.org/98373010/diff/60001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): https://codereview.chromium.org/98373010/diff/60001/chrome/browser/prerender/prerender_manager.cc#newcode499 chrome/browser/prerender/prerender_manager.cc:499: return false; On 2013/12/09 21:04:44, mmenke wrote: > optional: ...
7 years ago (2013-12-09 23:08:55 UTC) #8
mmenke
LGTM, just one nit. https://codereview.chromium.org/98373010/diff/80001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): https://codereview.chromium.org/98373010/diff/80001/chrome/browser/prerender/prerender_manager.cc#newcode524 chrome/browser/prerender/prerender_manager.cc:524: // out of it. For ...
7 years ago (2013-12-09 23:27:46 UTC) #9
davidben
https://codereview.chromium.org/98373010/diff/80001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): https://codereview.chromium.org/98373010/diff/80001/chrome/browser/prerender/prerender_manager.cc#newcode524 chrome/browser/prerender/prerender_manager.cc:524: // out of it. For normal WebContentses, this is ...
7 years ago (2013-12-09 23:30:54 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/davidben@chromium.org/98373010/120001
7 years ago (2013-12-09 23:40:57 UTC) #11
commit-bot: I haz the power
7 years ago (2013-12-10 05:04:31 UTC) #12
Message was sent while issue was closed.
Change committed as 239658

Powered by Google App Engine
This is Rietveld 408576698