summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/WebCore/dom/Document.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/webkit/WebCore/dom/Document.cpp')
-rw-r--r--src/3rdparty/webkit/WebCore/dom/Document.cpp20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/3rdparty/webkit/WebCore/dom/Document.cpp b/src/3rdparty/webkit/WebCore/dom/Document.cpp
index a51d1abda2..34418a9c13 100644
--- a/src/3rdparty/webkit/WebCore/dom/Document.cpp
+++ b/src/3rdparty/webkit/WebCore/dom/Document.cpp
@@ -26,8 +26,8 @@
#include "config.h"
#include "Document.h"
-#include "AnimationController.h"
#include "AXObjectCache.h"
+#include "AnimationController.h"
#include "CDATASection.h"
#include "CSSHelper.h"
#include "CSSStyleSelector.h"
@@ -77,6 +77,8 @@
#include "HitTestRequest.h"
#include "HitTestResult.h"
#include "ImageLoader.h"
+#include "InspectorController.h"
+#include "JSDOMBinding.h"
#include "KeyboardEvent.h"
#include "Logging.h"
#include "MessageEvent.h"
@@ -98,6 +100,7 @@
#include "RenderView.h"
#include "RenderWidget.h"
#include "ScriptController.h"
+#include "ScriptController.h"
#include "SecurityOrigin.h"
#include "SegmentedString.h"
#include "SelectionController.h"
@@ -107,8 +110,8 @@
#include "TextEvent.h"
#include "TextIterator.h"
#include "TextResourceDecoder.h"
-#include "TreeWalker.h"
#include "Timer.h"
+#include "TreeWalker.h"
#include "UIEvent.h"
#include "WebKitAnimationEvent.h"
#include "WebKitTransitionEvent.h"
@@ -120,8 +123,8 @@
#include "ScriptController.h"
#include <wtf/HashFunctions.h>
#include <wtf/MainThread.h>
-#include <wtf/StdLibExtras.h>
#include <wtf/PassRefPtr.h>
+#include <wtf/StdLibExtras.h>
#if ENABLE(DATABASE)
#include "Database.h"
@@ -1953,11 +1956,11 @@ Node *Document::nodeWithAbsIndex(int absIndex)
return n;
}
-void Document::processHttpEquiv(const String &equiv, const String &content)
+void Document::processHttpEquiv(const String& equiv, const String& content)
{
ASSERT(!equiv.isNull() && !content.isNull());
- Frame *frame = this->frame();
+ Frame* frame = this->frame();
if (equalIgnoringCase(equiv, "default-style")) {
// The preferred style set has been overridden as per section
@@ -1987,6 +1990,13 @@ void Document::processHttpEquiv(const String &equiv, const String &content)
setContentLanguage(content);
else if (equalIgnoringCase(equiv, "x-dns-prefetch-control"))
parseDNSPrefetchControlHeader(content);
+ else if (equalIgnoringCase(equiv, "x-frame-options")) {
+ FrameLoader* frameLoader = frame->loader();
+ if (frameLoader->shouldInterruptLoadForXFrameOptions(content, url())) {
+ frameLoader->stopAllLoaders();
+ frameLoader->scheduleHTTPRedirection(0, blankURL());
+ }
+ }
}
MouseEventWithHitTestResults Document::prepareMouseEvent(const HitTestRequest& request, const IntPoint& documentPoint, const PlatformMouseEvent& event)