| Index: third_party/WebKit/Source/core/css/resolver/ElementStyleResources.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/resolver/ElementStyleResources.cpp b/third_party/WebKit/Source/core/css/resolver/ElementStyleResources.cpp
|
| index 60be1fbd5c5204191fa171bb6120d1ffa80db9e1..4b6ba321da54dcf7230009dabaeb9c6e77e76609 100644
|
| --- a/third_party/WebKit/Source/core/css/resolver/ElementStyleResources.cpp
|
| +++ b/third_party/WebKit/Source/core/css/resolver/ElementStyleResources.cpp
|
| @@ -57,7 +57,7 @@
|
| PassRefPtrWillBeRawPtr<StyleImage> ElementStyleResources::generatedOrPendingFromValue(CSSPropertyID property, CSSImageGeneratorValue* value)
|
| {
|
| if (value->isPending()) {
|
| - m_pendingImageProperties.add(property);
|
| + m_pendingImageProperties.set(property, value);
|
| return StylePendingImage::create(value);
|
| }
|
| return StyleGeneratedImage::create(value);
|
| @@ -65,30 +65,30 @@
|
|
|
| PassRefPtrWillBeRawPtr<StyleImage> ElementStyleResources::setOrPendingFromValue(CSSPropertyID property, CSSImageSetValue* value)
|
| {
|
| - if (value->isCachePending(m_deviceScaleFactor)) {
|
| - m_pendingImageProperties.add(property);
|
| - return StylePendingImage::create(value);
|
| - }
|
| - return value->cachedImageSet(m_deviceScaleFactor);
|
| + RefPtrWillBeRawPtr<StyleImage> image = value->cachedOrPendingImageSet(m_deviceScaleFactor);
|
| + if (image && image->isPendingImage())
|
| + m_pendingImageProperties.set(property, value);
|
| + return image.release();
|
| }
|
|
|
| PassRefPtrWillBeRawPtr<StyleImage> ElementStyleResources::cachedOrPendingFromValue(Document& document, CSSPropertyID property, CSSImageValue* value)
|
| {
|
| - if (value->isCachePending()) {
|
| - m_pendingImageProperties.add(property);
|
| - return StylePendingImage::create(value);
|
| + RefPtrWillBeRawPtr<StyleImage> image = value->cachedOrPendingImage();
|
| + if (image) {
|
| + if (image->isPendingImage())
|
| + m_pendingImageProperties.set(property, value);
|
| + else
|
| + value->restoreCachedResourceIfNeeded(document);
|
| }
|
| - value->restoreCachedResourceIfNeeded(document);
|
| - return value->cachedImage();
|
| + return image.release();
|
| }
|
|
|
| PassRefPtrWillBeRawPtr<StyleImage> ElementStyleResources::cursorOrPendingFromValue(CSSPropertyID property, CSSCursorImageValue* value)
|
| {
|
| - if (value->isCachePending(m_deviceScaleFactor)) {
|
| - m_pendingImageProperties.add(property);
|
| - return StylePendingImage::create(value);
|
| - }
|
| - return value->cachedImage(m_deviceScaleFactor);
|
| + RefPtrWillBeRawPtr<StyleImage> image = value->cachedOrPendingImage(m_deviceScaleFactor);
|
| + if (image && image->isPendingImage())
|
| + m_pendingImageProperties.set(property, value);
|
| + return image.release();
|
| }
|
|
|
| void ElementStyleResources::clearPendingImageProperties()
|
|
|