Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 5f1e6d885ecae32fe84a2afb8934e32d7f43adba..6e94a9ec82eb75a8a7c99f7226baf8bc9b10d6d8 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -37,6 +37,7 @@ |
#include "content/child/request_extra_data.h" |
#include "content/child/v8_value_converter_impl.h" |
#include "content/child/webmessageportchannel_impl.h" |
+#include "content/child/weburlresponse_extradata_impl.h" |
#include "content/common/content_constants_internal.h" |
#include "content/common/database_messages.h" |
#include "content/common/dom_storage/dom_storage_types.h" |
@@ -2887,7 +2888,11 @@ void RenderViewImpl::OnSuppressDialogsUntilSwapOut() { |
} |
void RenderViewImpl::OnClosePage() { |
- FOR_EACH_OBSERVER(RenderViewObserver, observers_, ClosePage()); |
+ WebURLResponseExtraDataImpl* extra_data = |
+ static_cast<WebURLResponseExtraDataImpl*>( |
+ webview()->mainFrame()->dataSource()->response().extraData()); |
+ FOR_EACH_OBSERVER(RenderViewObserver, observers_, |
+ ClosePage(extra_data ? extra_data->is_lofi() : false)); |
// TODO(creis): We'd rather use webview()->Close() here, but that currently |
// sets the WebView's delegate_ to NULL, preventing any JavaScript dialogs |
// in the onunload handler from appearing. For now, we're bypassing that and |