|
OOPIF: Specify previous sibling frames when creating RenderFrames.
When initializing a new renderer for an OOP frame, the current
behavior is to first create all the RenderFrameProxies, and then to
create the new RenderFrame, appending it as its parent's last child in
the frame tree. This disregards the order of sibling frames and thus
may break indexed window access (e.g., window.frames[2]).
This CL passes the previous sibling's routing ID in the
FrameMsg_NewFrame message, so that the new frame can be inserted in
the correct place in the frame tree. Note that we don't need to do
this for RenderFrameProxies, as those are already created in the
correct order (by CreateProxiesForSiteInstance) when initializing a
new renderer process.
Corresponding Blink CL: https://codereview.chromium.org/1119823003/
BUG= 478792
Committed: https://crrev.com/134cdb8c234847ebde156e46cad95be3221dc66b
Cr-Commit-Position: refs/heads/master@{#328384}
Total comments: 25
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+275 lines, -102 lines) |
Patch |
 |
M |
content/browser/frame_host/frame_tree_node.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/frame_tree_node.cc
|
View
|
1
|
1 chunk |
+13 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/frame_tree_unittest.cc
|
View
|
1
|
1 chunk |
+24 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/render_frame_host_impl.h
|
View
|
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/render_frame_host_impl.cc
|
View
|
|
2 chunks |
+15 lines, -10 lines |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/render_frame_host_manager.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/frame_host/render_frame_host_manager.cc
|
View
|
1
2
3
|
2 chunks |
+19 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/browser/site_per_process_browsertest.cc
|
View
|
1
2
3
4
|
5 chunks |
+135 lines, -52 lines |
0 comments
|
Download
|
 |
M |
content/browser/web_contents/web_contents_impl.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/web_contents/web_contents_impl.cc
|
View
|
1
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/common/frame_messages.h
|
View
|
1
2
3
4
|
2 chunks |
+31 lines, -13 lines |
0 comments
|
Download
|
 |
M |
content/renderer/render_frame_impl.h
|
View
|
1
2
|
1 chunk |
+8 lines, -6 lines |
0 comments
|
Download
|
 |
M |
content/renderer/render_frame_impl.cc
|
View
|
1
2
3
|
2 chunks |
+9 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/renderer/render_frame_impl_browsertest.cc
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/renderer/render_thread_impl.h
|
View
|
|
2 chunks |
+2 lines, -6 lines |
0 comments
|
Download
|
 |
M |
content/renderer/render_thread_impl.cc
|
View
|
1
2
|
1 chunk |
+5 lines, -8 lines |
0 comments
|
Download
|
Total messages: 19 (6 generated)
|