| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index 93c58f5fdd111ae8a60a6ed921482cc86d0eb5a5..e1255bcb9e18bed22dca2c2eaa1ab4ba914e0f19 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -1790,6 +1790,12 @@
|
| proxy = RenderFrameProxy::CreateProxyToReplaceFrame(
|
| this, proxy_routing_id, replicated_frame_state.scope);
|
|
|
| + // Synchronously run the unload handler before sending the ACK.
|
| + // TODO(creis): Call dispatchUnloadEvent unconditionally here to support
|
| + // unload on subframes as well.
|
| + if (is_main_frame_)
|
| + frame_->DispatchUnloadEvent();
|
| +
|
| // Swap out and stop sending any IPC messages that are not ACKs.
|
| if (is_main_frame_)
|
| render_view_->SetSwappedOut(true);
|
|
|