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

Issue 8392041: Prerendered tabs use the same SessionStorage namespace as the tab that triggered the prerender. (Closed)

Created:
9 years, 1 month ago by cbentzel
Modified:
9 years, 1 month ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, creis+watch_chromium.org, tburkard+watch_chromium.org, ajwong+watch_chromium.org, jam, Avi (use Gerrit), dpranke-watch+content_chromium.org, joi+watch-content_chromium.org, dominich+watch_chromium.org, darin-cc_chromium.org, brettw-cc_chromium.org, mmenke
Visibility:
Public.

Description

Prerendered tabs use the same SessionStorage namespace as the tab that triggered the prerender. If the prerendered page is swapped in to a tab which has a different namespace, it will be canceled. BUG=80679 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=108342

Patch Set 1 #

Patch Set 2 : tests work, formatting #

Patch Set 3 : Remove renderer_main change #

Patch Set 4 : Revert renderer_main change #

Patch Set 5 : Reorder #

Patch Set 6 : Omnibox works #

Total comments: 1

Patch Set 7 : Indent fixes #

Total comments: 8

Patch Set 8 : Use SessionStorageNamespace ID rather than object #

Patch Set 9 : Rebase and compare pointers #

Patch Set 10 : Browsertests #

Patch Set 11 : Check RenderViewHost #

Patch Set 12 : Fix NetInternals browser test #

Total comments: 13

Patch Set 13 : Fix lint #

Patch Set 14 : string_ordinal_unittest #

Total comments: 13

Patch Set 15 : Comment and index fixes #

Patch Set 16 : One more indent #

Total comments: 2

Patch Set 17 : Remove check #

Unified diffs Side-by-side diffs Delta from patch set Stats (+237 lines, -337 lines) Patch
M chrome/browser/autocomplete/autocomplete_edit.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +6 lines, -2 lines 0 comments Download
M chrome/browser/prerender/prerender_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 7 chunks +37 lines, -116 lines 0 comments Download
M chrome/browser/prerender/prerender_contents.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +5 lines, -3 lines 0 comments Download
M chrome/browser/prerender/prerender_contents.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +14 lines, -10 lines 0 comments Download
M chrome/browser/prerender/prerender_final_status.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/prerender/prerender_final_status.cc View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/prerender/prerender_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +15 lines, -8 lines 0 comments Download
M chrome/browser/prerender/prerender_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 9 chunks +36 lines, -14 lines 0 comments Download
M chrome/browser/prerender/prerender_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +4 lines, -3 lines 0 comments Download
M chrome/browser/ui/webui/net_internals_ui_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 6 chunks +48 lines, -17 lines 0 comments Download
A chrome/test/data/prerender/prerender_loader_with_session_storage.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +37 lines, -0 lines 0 comments Download
D chrome/test/data/prerender/prerender_visibility_hidden.html View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +0 lines, -38 lines 0 comments Download
D chrome/test/data/prerender/prerender_visibility_hidden_quick.html View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +0 lines, -82 lines 0 comments Download
M chrome/test/data/webui/net_internals/prerender_view.js View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +29 lines, -44 lines 0 comments Download
M content/browser/renderer_host/render_view_host.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (0 generated)
cbentzel
This CL will share the sessionStorage namespace of the origin with the prerendered tab. When ...
9 years, 1 month ago (2011-10-26 20:32:03 UTC) #1
cbentzel
Actually - this doesn't work for the omnibox case so you may want to hold ...
9 years, 1 month ago (2011-10-26 20:48:05 UTC) #2
cbentzel
Omnibox works now, but still is lacking a browsertest. shishir: I mainly wanted you to ...
9 years, 1 month ago (2011-10-26 21:48:29 UTC) #3
dominich
http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc#newcode281 chrome/browser/prerender/prerender_manager.cc:281: SessionStorageNamespace* session_storage_namespace) { A SessionStorageNamespace really doesn't make sense ...
9 years, 1 month ago (2011-10-26 21:57:55 UTC) #4
cbentzel
http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc#newcode281 chrome/browser/prerender/prerender_manager.cc:281: SessionStorageNamespace* session_storage_namespace) { On 2011/10/26 21:57:56, dominich wrote: > ...
9 years, 1 month ago (2011-10-26 22:03:48 UTC) #5
dominich
On 2011/10/26 22:03:48, cbentzel wrote: > http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc > File chrome/browser/prerender/prerender_manager.cc (right): > > http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_manager.cc#newcode281 > ...
9 years, 1 month ago (2011-10-26 22:21:24 UTC) #6
mmenke
http://codereview.chromium.org/8392041/diff/6002/chrome/browser/autocomplete/autocomplete_edit.cc File chrome/browser/autocomplete/autocomplete_edit.cc (right): http://codereview.chromium.org/8392041/diff/6002/chrome/browser/autocomplete/autocomplete_edit.cc#newcode1043 chrome/browser/autocomplete/autocomplete_edit.cc:1043: tab->tab_contents()->render_view_host()->session_storage_namespace()); nit: 4 space indent http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): ...
9 years, 1 month ago (2011-10-27 14:26:34 UTC) #7
cbentzel
http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_contents.cc#newcode219 chrome/browser/prerender/prerender_contents.cc:219: const RenderViewHost* source_render_view_host) { On 2011/10/27 14:26:34, Matt Menke ...
9 years, 1 month ago (2011-10-27 17:14:02 UTC) #8
mmenke
http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): http://codereview.chromium.org/8392041/diff/6002/chrome/browser/prerender/prerender_contents.cc#newcode219 chrome/browser/prerender/prerender_contents.cc:219: const RenderViewHost* source_render_view_host) { On 2011/10/27 17:14:02, cbentzel wrote: ...
9 years, 1 month ago (2011-10-27 17:21:35 UTC) #9
cbentzel
It turns out we need to use the exact same SessionStorageNamespace object for the prerendered ...
9 years, 1 month ago (2011-10-27 19:57:43 UTC) #10
cbentzel
I added a browser test to validate that the sessionStorage namespace is the same when ...
9 years, 1 month ago (2011-10-31 17:05:57 UTC) #11
mmenke
Figured I'd wait for the net-internals fix before reviewing. http://codereview.chromium.org/8392041/diff/24001/chrome/browser/autocomplete/autocomplete_edit.cc File chrome/browser/autocomplete/autocomplete_edit.cc (right): http://codereview.chromium.org/8392041/diff/24001/chrome/browser/autocomplete/autocomplete_edit.cc#newcode1045 chrome/browser/autocomplete/autocomplete_edit.cc:1045: ...
9 years, 1 month ago (2011-11-02 02:27:55 UTC) #12
cbentzel
Newest patch fixes the PrerenderManager unittest and the NetInternalsTest. It also incorporates some small fixes ...
9 years, 1 month ago (2011-11-02 15:57:08 UTC) #13
mmenke
Couple more nits. Only one potentially significant issue. http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc#newcode549 chrome/browser/prerender/prerender_manager.cc:549: // ...
9 years, 1 month ago (2011-11-02 16:19:16 UTC) #14
cbentzel
I'll fix the nits you point out - but the issue you raised is a ...
9 years, 1 month ago (2011-11-02 16:55:51 UTC) #15
cbentzel
http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc#newcode549 chrome/browser/prerender/prerender_manager.cc:549: // If the sessionStorage namespaces don't match, don't swap ...
9 years, 1 month ago (2011-11-02 17:13:49 UTC) #16
mmenke
LGTM http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc File chrome/browser/prerender/prerender_manager.cc (right): http://codereview.chromium.org/8392041/diff/32001/chrome/browser/prerender/prerender_manager.cc#newcode551 chrome/browser/prerender/prerender_manager.cc:551: RenderViewHost* old_render_view_host = tab_contents->render_view_host(); On 2011/11/02 16:55:52, cbentzel ...
9 years, 1 month ago (2011-11-02 17:44:07 UTC) #17
cbentzel
+pkasting: chrome/browser/autocomplete/autocomplete_edit.cc +jam: content/browser/renderer_host/render_view_host.h
9 years, 1 month ago (2011-11-02 17:47:32 UTC) #18
Peter Kasting
LGTM http://codereview.chromium.org/8392041/diff/31003/chrome/browser/autocomplete/autocomplete_edit.cc File chrome/browser/autocomplete/autocomplete_edit.cc (right): http://codereview.chromium.org/8392041/diff/31003/chrome/browser/autocomplete/autocomplete_edit.cc#newcode1043 chrome/browser/autocomplete/autocomplete_edit.cc:1043: if (current_host) { Can this actually be NULL ...
9 years, 1 month ago (2011-11-02 17:53:50 UTC) #19
cbentzel
http://codereview.chromium.org/8392041/diff/31003/chrome/browser/autocomplete/autocomplete_edit.cc File chrome/browser/autocomplete/autocomplete_edit.cc (right): http://codereview.chromium.org/8392041/diff/31003/chrome/browser/autocomplete/autocomplete_edit.cc#newcode1043 chrome/browser/autocomplete/autocomplete_edit.cc:1043: if (current_host) { On 2011/11/02 17:53:56, Peter Kasting wrote: ...
9 years, 1 month ago (2011-11-02 18:14:14 UTC) #20
tburkard
LGTM. So this will be the first step which means we will only be able ...
9 years, 1 month ago (2011-11-02 18:36:16 UTC) #21
cbentzel
On 2011/11/02 18:36:16, tburkard wrote: > LGTM. > > So this will be the first ...
9 years, 1 month ago (2011-11-02 18:46:53 UTC) #22
jam
content lgtm
9 years, 1 month ago (2011-11-02 19:08:58 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/cbentzel@chromium.org/8392041/26004
9 years, 1 month ago (2011-11-02 19:24:49 UTC) #24
commit-bot: I haz the power
9 years, 1 month ago (2011-11-02 20:28:39 UTC) #25
Change committed as 108342

Powered by Google App Engine
This is Rietveld 408576698