Index: third_party/WebKit/Source/core/loader/FrameLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/FrameLoader.cpp b/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
index 3137c89265b684f69598e0e809d913f3903c6e5a..c7590b0adb7e93173791cc8339f2e887305d3485 100644 |
--- a/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/FrameLoader.cpp |
@@ -170,7 +170,6 @@ FrameLoader::FrameLoader(LocalFrame* frame) |
, m_inStopAllLoaders(false) |
, m_checkTimer(this, &FrameLoader::checkTimerFired) |
, m_didAccessInitialDocument(false) |
- , m_didAccessInitialDocumentTimer(this, &FrameLoader::didAccessInitialDocumentTimerFired) |
, m_forcedSandboxFlags(SandboxNone) |
, m_dispatchingDidClearWindowObjectInMainWorld(false) |
, m_protectProvisionalLoader(false) |
@@ -1061,22 +1060,12 @@ void FrameLoader::didAccessInitialDocument() |
// We only need to notify the client once, and only for the main frame. |
if (isLoadingMainFrame() && !m_didAccessInitialDocument) { |
m_didAccessInitialDocument = true; |
- // Notify asynchronously, since this is called within a JavaScript security check. |
- m_didAccessInitialDocumentTimer.startOneShot(0, BLINK_FROM_HERE); |
- } |
-} |
- |
-void FrameLoader::didAccessInitialDocumentTimerFired(Timer<FrameLoader>*) |
-{ |
- if (client()) |
- client()->didAccessInitialDocument(); |
-} |
-void FrameLoader::notifyIfInitialDocumentAccessed() |
-{ |
- if (m_didAccessInitialDocumentTimer.isActive()) { |
- m_didAccessInitialDocumentTimer.stop(); |
- didAccessInitialDocumentTimerFired(0); |
+ // Forbid script execution to prevent re-entering V8, since this is |
+ // called from a binding security check. |
+ ScriptForbiddenScope forbidScripts; |
+ if (client()) |
+ client()->didAccessInitialDocument(); |
} |
} |