Index: Source/core/xml/XMLHttpRequest.cpp |
diff --git a/Source/core/xml/XMLHttpRequest.cpp b/Source/core/xml/XMLHttpRequest.cpp |
index fcb37f7b614719836525e953aea371fe7cf7d0b1..7ac3d25f622e78d82bc500de0708943fcbcb96b6 100644 |
--- a/Source/core/xml/XMLHttpRequest.cpp |
+++ b/Source/core/xml/XMLHttpRequest.cpp |
@@ -46,6 +46,7 @@ |
#include "ResourceError.h" |
#include "ResourceRequest.h" |
#include "ScriptCallStack.h" |
+#include "ScriptController.h" |
#include "ScriptProfile.h" |
#include "SecurityOrigin.h" |
#include "Settings.h" |
@@ -481,7 +482,8 @@ void XMLHttpRequest::open(const String& method, const KURL& url, bool async, Exc |
bool shouldBypassMainWorldContentSecurityPolicy = false; |
if (scriptExecutionContext()->isDocument()) { |
Document* document = static_cast<Document*>(scriptExecutionContext()); |
- shouldBypassMainWorldContentSecurityPolicy = document->frame()->script()->shouldBypassMainWorldContentSecurityPolicy(); |
+ if (document->frame()) |
+ shouldBypassMainWorldContentSecurityPolicy = document->frame()->script()->shouldBypassMainWorldContentSecurityPolicy(); |
} |
if (!shouldBypassMainWorldContentSecurityPolicy && !scriptExecutionContext()->contentSecurityPolicy()->allowConnectToSource(url)) { |
// FIXME: Should this be throwing an exception? |