Index: Source/core/page/PageGroupLoadDeferrer.cpp |
=================================================================== |
--- Source/core/page/PageGroupLoadDeferrer.cpp (revision 157485) |
+++ Source/core/page/PageGroupLoadDeferrer.cpp (working copy) |
@@ -22,6 +22,7 @@ |
#include "core/page/PageGroupLoadDeferrer.h" |
#include "core/dom/Document.h" |
+#include "core/loader/FrameLoader.h" |
#include "core/page/Frame.h" |
#include "core/page/Page.h" |
#include "core/page/PageGroup.h" |
@@ -42,6 +43,10 @@ |
if (!otherPage->defersLoading()) { |
m_deferredFrames.append(otherPage->mainFrame()); |
+ // Ensure that we notify the client if the initial empty document is accessed before showing anything |
+ // modal, to prevent spoofs while the modal window or sheet is visible. |
+ otherPage->mainFrame()->loader()->notifyIfInitialDocumentAccessed(); |
+ |
// This code is not logically part of load deferring, but we do not want JS code executed beneath modal |
// windows or sheets, which is exactly when PageGroupLoadDeferrer is used. |
for (Frame* frame = otherPage->mainFrame(); frame; frame = frame->tree()->traverseNext()) |