| Index: third_party/WebKit/Source/core/css/CSSImageValue.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/CSSImageValue.cpp b/third_party/WebKit/Source/core/css/CSSImageValue.cpp
|
| index b8ee78fb88e48c334ac0a1a829f040ac492ace5c..b32da12d8412827c6fcd5008f8f8bf895f3fdc7c 100644
|
| --- a/third_party/WebKit/Source/core/css/CSSImageValue.cpp
|
| +++ b/third_party/WebKit/Source/core/css/CSSImageValue.cpp
|
| @@ -21,6 +21,8 @@
|
| #include "core/css/CSSImageValue.h"
|
|
|
| #include "core/css/CSSMarkup.h"
|
| +#include "core/css/serializer/CSSDeserializeStream.h"
|
| +#include "core/css/serializer/CSSSerializeStream.h"
|
| #include "core/dom/Document.h"
|
| #include "core/fetch/FetchInitiatorTypeNames.h"
|
| #include "core/fetch/FetchRequest.h"
|
| @@ -47,6 +49,27 @@ CSSImageValue::~CSSImageValue()
|
| {
|
| }
|
|
|
| +PassRefPtrWillBeRawPtr<CSSImageValue> CSSImageValue::deserializeAfterDispatch(CSSDeserializeStream* stream)
|
| +{
|
| + AtomicString relativeURL = stream->readAtomicString();
|
| + AtomicString absoluteURL = stream->readAtomicString();
|
| + Referrer referrer = stream->readReferrer();
|
| + AtomicString initiatorName = stream->readAtomicString();
|
| +
|
| + return adoptRefWillBeNoop(new CSSImageValue(relativeURL, absoluteURL, referrer, initiatorName));
|
| +}
|
| +
|
| +CSSImageValue::CSSImageValue(AtomicString relativeURL, AtomicString absoluteURL, const Referrer& referrer, AtomicString initiatorName)
|
| + : CSSValue(ImageClass)
|
| + , m_relativeURL(relativeURL)
|
| + , m_absoluteURL(absoluteURL)
|
| + , m_referrer(referrer)
|
| + , m_isCachePending(true)
|
| + , m_cachedImage(nullptr)
|
| + , m_initiatorName(initiatorName)
|
| +{
|
| +}
|
| +
|
| StyleFetchedImage* CSSImageValue::cacheImage(Document* document, CrossOriginAttributeValue crossOrigin)
|
| {
|
| ASSERT(document);
|
| @@ -108,6 +131,14 @@ bool CSSImageValue::knownToBeOpaque(const LayoutObject* layoutObject) const
|
| return m_cachedImage ? m_cachedImage->knownToBeOpaque(layoutObject) : false;
|
| }
|
|
|
| +void CSSImageValue::serializeAfterDispatch(CSSSerializeStream* stream) const
|
| +{
|
| + stream->writeAtomicString(m_relativeURL);
|
| + stream->writeAtomicString(m_absoluteURL);
|
| + stream->writeReferrer(m_referrer);
|
| + stream->writeAtomicString(m_initiatorName);
|
| +}
|
| +
|
| DEFINE_TRACE_AFTER_DISPATCH(CSSImageValue)
|
| {
|
| visitor->trace(m_cachedImage);
|
|
|