Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 842e93f2a4f24ae4df409185e0102c155120a101..6b5e023e569927bdd4e4c05b475a1449ca5868d3 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -4405,6 +4405,13 @@ void RenderFrameImpl::NavigateInternal( |
GetContentClient()->SetActiveURL(common_params.url); |
+ // If this frame isn't in the same process as the main frame, it may naively |
+ // assume that this is the first navigation in the iframe, but this may not |
+ // actually be the case. Inform the frame's state machine if this frame has |
+ // already committed other loads. |
+ if (request_params.has_committed_real_load && frame_->parent()) |
+ frame_->setCommittedFirstRealLoad(); |
Charlie Reis
2015/05/27 17:26:24
japhet: Can you sanity check this part? I'm basic
|
+ |
if (is_reload && !render_view_->history_controller()->GetCurrentEntry()) { |
// We cannot reload if we do not have any history state. This happens, for |
// example, when recovering from a crash. |