Index: content/renderer/render_view_impl.h |
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h |
index d42efa5558362aa1d3933125e67f446dbe30fdbd..f67e8d2ddc96f76eb93beb72d3b0fc4de6ef9620 100644 |
--- a/content/renderer/render_view_impl.h |
+++ b/content/renderer/render_view_impl.h |
@@ -1008,6 +1008,7 @@ class CONTENT_EXPORT RenderViewImpl |
void OnShouldClose(); |
void OnStop(); |
void OnStopFinding(StopFindAction action); |
+ void OnSuppressDialogsUntilSwapOut(); |
void OnSwapOut(); |
void OnThemeChanged(); |
void OnUpdateTargetURLAck(); |
@@ -1250,6 +1251,11 @@ class CONTENT_EXPORT RenderViewImpl |
// decidePolicyForNavigation for details. |
bool opener_suppressed_; |
+ // Whether we must stop creating nested message loops for modal dialogs until |
+ // OnSwapOut is called. This is necessary because modal dialogs have a |
+ // PageGroupLoadDeferrer on the stack that interferes with swapping out. |
+ bool suppress_dialogs_until_swap_out_; |
+ |
// Holds state pertaining to a navigation that we initiated. This is held by |
// the WebDataSource::ExtraData attribute. We use pending_navigation_state_ |
// as a temporary holder for the state until the WebDataSource corresponding |