diff options
author | Zeno Albisser <zeno.albisser@theqtcompany.com> | 2014-12-05 15:04:29 +0100 |
---|---|---|
committer | Andras Becsi <andras.becsi@theqtcompany.com> | 2014-12-09 10:49:28 +0100 |
commit | af6588f8d723931a298c995fa97259bb7f7deb55 (patch) | |
tree | 060ca707847ba1735f01af2372e0d5e494dc0366 /chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h | |
parent | 2fff84d821cc7b1c785f6404e0f8091333283e74 (diff) |
BASELINE: Update chromium to 40.0.2214.28 and ninja to 1.5.3.
Change-Id: I759465284fd64d59ad120219cbe257f7402c4181
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Diffstat (limited to 'chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h')
-rw-r--r-- | chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h b/chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h index 3f9109805ab..f0af67c7de2 100644 --- a/chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h +++ b/chromium/third_party/WebKit/Source/core/loader/DocumentLoader.h @@ -33,6 +33,7 @@ #include "core/fetch/RawResource.h" #include "core/fetch/ResourceLoaderOptions.h" #include "core/fetch/ResourcePtr.h" +#include "core/frame/csp/ContentSecurityPolicy.h" #include "core/loader/DocumentLoadTiming.h" #include "core/loader/DocumentWriter.h" #include "core/loader/NavigationAction.h" @@ -47,23 +48,15 @@ namespace blink { class WebThreadedDataReceiver; } -namespace WTF { -class SchedulePair; -} - -namespace WebCore { +namespace blink { class ApplicationCacheHost; - class ArchiveResource; class ArchiveResourceCollection; class ResourceFetcher; - class ContentFilter; - class FormState; + class DocumentInit; class LocalFrame; class FrameLoader; class MHTMLArchive; - class Page; class ResourceLoader; - class SharedBuffer; class DocumentLoader : public RefCounted<DocumentLoader>, private RawResourceClient { WTF_MAKE_FAST_ALLOCATED; @@ -80,7 +73,7 @@ namespace WebCore { unsigned long mainResourceIdentifier() const; - void replaceDocument(const String& source, Document*); + void replaceDocumentWhileExecutingJavaScriptURL(const DocumentInit&, const String& source, Document*); const AtomicString& mimeType() const; @@ -111,16 +104,13 @@ namespace WebCore { void setIsClientRedirect(bool isClientRedirect) { m_isClientRedirect = isClientRedirect; } bool replacesCurrentHistoryItem() const { return m_replacesCurrentHistoryItem; } void setReplacesCurrentHistoryItem(bool replacesCurrentHistoryItem) { m_replacesCurrentHistoryItem = replacesCurrentHistoryItem; } - const AtomicString& overrideEncoding() const { return m_overrideEncoding; } bool scheduleArchiveLoad(Resource*, const ResourceRequest&); - bool shouldContinueForNavigationPolicy(const ResourceRequest&); + bool shouldContinueForNavigationPolicy(const ResourceRequest&, ContentSecurityPolicyCheck shouldCheckMainWorldContentSecurityPolicy, bool isTransitionNavigation = false); const NavigationAction& triggeringAction() const { return m_triggeringAction; } void setTriggeringAction(const NavigationAction& action) { m_triggeringAction = action; } - void setOverrideEncoding(const AtomicString& encoding) { m_overrideEncoding = encoding; } - void setDefersLoading(bool); void startLoadingMainResource(); @@ -135,13 +125,15 @@ namespace WebCore { void clearRedirectChain(); void appendRedirect(const KURL&); + PassRefPtr<ContentSecurityPolicy> releaseContentSecurityPolicy() { return m_contentSecurityPolicy.release(); } + protected: DocumentLoader(LocalFrame*, const ResourceRequest&, const SubstituteData&); Vector<KURL> m_redirectChain; private: - static PassRefPtrWillBeRawPtr<DocumentWriter> createWriterFor(LocalFrame*, const Document* ownerDocument, const KURL&, const AtomicString& mimeType, const AtomicString& encoding, bool userChosen, bool dispatch); + static PassRefPtrWillBeRawPtr<DocumentWriter> createWriterFor(const Document* ownerDocument, const DocumentInit&, const AtomicString& mimeType, const AtomicString& encoding, bool dispatch); void ensureWriter(const AtomicString& mimeType, const KURL& overridingURL = KURL()); void endWriting(DocumentWriter*); @@ -164,11 +156,12 @@ namespace WebCore { void willSendRequest(ResourceRequest&, const ResourceResponse&); void finishedLoading(double finishTime); void mainReceivedError(const ResourceError&); - virtual void redirectReceived(Resource*, ResourceRequest&, const ResourceResponse&) OVERRIDE FINAL; - virtual void updateRequest(Resource*, const ResourceRequest&) OVERRIDE FINAL; - virtual void responseReceived(Resource*, const ResourceResponse&) OVERRIDE FINAL; - virtual void dataReceived(Resource*, const char* data, int length) OVERRIDE FINAL; - virtual void notifyFinished(Resource*) OVERRIDE FINAL; + void cancelLoadAfterXFrameOptionsOrCSPDenied(const ResourceResponse&); + virtual void redirectReceived(Resource*, ResourceRequest&, const ResourceResponse&) override final; + virtual void updateRequest(Resource*, const ResourceRequest&) override final; + virtual void responseReceived(Resource*, const ResourceResponse&, PassOwnPtr<WebDataConsumerHandle>) override final; + virtual void dataReceived(Resource*, const char* data, unsigned length) override final; + virtual void notifyFinished(Resource*) override final; bool maybeLoadEmpty(); @@ -203,14 +196,12 @@ namespace WebCore { bool m_isClientRedirect; bool m_replacesCurrentHistoryItem; - AtomicString m_overrideEncoding; - // The action that triggered loading - we keep this around for the // benefit of the various policy handlers. NavigationAction m_triggeringAction; - OwnPtr<ArchiveResourceCollection> m_archiveResourceCollection; - RefPtr<MHTMLArchive> m_archive; + OwnPtrWillBePersistent<ArchiveResourceCollection> m_archiveResourceCollection; + RefPtrWillBePersistent<MHTMLArchive> m_archive; bool m_loadingMainResource; DocumentLoadTiming m_documentLoadTiming; @@ -218,7 +209,9 @@ namespace WebCore { double m_timeOfLastDataReceived; friend class ApplicationCacheHost; // for substitute resource delivery - OwnPtr<ApplicationCacheHost> m_applicationCacheHost; + OwnPtrWillBePersistent<ApplicationCacheHost> m_applicationCacheHost; + + RefPtr<ContentSecurityPolicy> m_contentSecurityPolicy; }; } |