Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1412)

Unified Diff: Source/core/rendering/style/FillLayer.cpp

Issue 38573005: Web Animations CSS: Fix crash when transitioning background or mask properties (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/rendering/style/FillLayer.h ('k') | Source/core/rendering/style/StyleBackgroundData.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/rendering/style/FillLayer.cpp
diff --git a/Source/core/rendering/style/FillLayer.cpp b/Source/core/rendering/style/FillLayer.cpp
index fc784c84092c30e7e77a810e09b3de9dfc540e28..c4b48bf0a2f3bfd83f58db04a9139453cd702f09 100644
--- a/Source/core/rendering/style/FillLayer.cpp
+++ b/Source/core/rendering/style/FillLayer.cpp
@@ -40,7 +40,7 @@ struct SameSizeAsFillLayer {
COMPILE_ASSERT(sizeof(FillLayer) == sizeof(SameSizeAsFillLayer), FillLayer_should_stay_small);
-FillLayer::FillLayer(EFillLayerType type)
+FillLayer::FillLayer(EFillLayerType type, bool useInitialValues)
: m_next(0)
, m_image(FillLayer::initialFillImage(type))
, m_xPosition(FillLayer::initialFillXPosition(type))
@@ -52,24 +52,24 @@ FillLayer::FillLayer(EFillLayerType type)
, m_repeatX(FillLayer::initialFillRepeatX(type))
, m_repeatY(FillLayer::initialFillRepeatY(type))
, m_composite(FillLayer::initialFillComposite(type))
- , m_sizeType(SizeNone) // SizeNone indicates size is unset.
+ , m_sizeType(useInitialValues ? FillLayer::initialFillSizeType(type) : SizeNone)
, m_blendMode(FillLayer::initialFillBlendMode(type))
, m_maskSourceType(FillLayer::initialFillMaskSourceType(type))
, m_backgroundXOrigin(LeftEdge)
, m_backgroundYOrigin(TopEdge)
- , m_imageSet(false)
- , m_attachmentSet(false)
- , m_clipSet(false)
- , m_originSet(false)
- , m_repeatXSet(false)
- , m_repeatYSet(false)
- , m_xPosSet(false)
- , m_yPosSet(false)
- , m_backgroundXOriginSet(false)
- , m_backgroundYOriginSet(false)
- , m_compositeSet(type == MaskFillLayer)
- , m_blendModeSet(false)
- , m_maskSourceTypeSet(false)
+ , m_imageSet(useInitialValues)
+ , m_attachmentSet(useInitialValues)
+ , m_clipSet(useInitialValues)
+ , m_originSet(useInitialValues)
+ , m_repeatXSet(useInitialValues)
+ , m_repeatYSet(useInitialValues)
+ , m_xPosSet(useInitialValues)
+ , m_yPosSet(useInitialValues)
+ , m_backgroundXOriginSet(useInitialValues)
+ , m_backgroundYOriginSet(useInitialValues)
+ , m_compositeSet(useInitialValues || type == MaskFillLayer)
+ , m_blendModeSet(useInitialValues)
+ , m_maskSourceTypeSet(useInitialValues)
, m_type(type)
{
}
« no previous file with comments | « Source/core/rendering/style/FillLayer.h ('k') | Source/core/rendering/style/StyleBackgroundData.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698