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

Unified Diff: third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp

Issue 2346193002: Split CSSPrimitiveValue into CSSPrimitiveValue and CSSIdentifierValue (Closed)
Patch Set: Rebase please work Created 4 years, 3 months 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
Index: third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp
diff --git a/third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp b/third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp
index 037199d0369a0da23dfce61dd60b997c4daf2f7c..ec13167393eb4cd36f4780c004be06f51982879c 100644
--- a/third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp
+++ b/third_party/WebKit/Source/core/animation/CSSImageSliceInterpolationType.cpp
@@ -34,10 +34,10 @@ struct SliceTypes {
}
explicit SliceTypes(const CSSBorderImageSliceValue& slice)
{
- isNumber[SideTop] = slice.slices().top()->isNumber();
- isNumber[SideRight] = slice.slices().right()->isNumber();
- isNumber[SideBottom] = slice.slices().bottom()->isNumber();
- isNumber[SideLeft] = slice.slices().left()->isNumber();
+ isNumber[SideTop] = slice.slices().top()->isPrimitiveValue() && toCSSPrimitiveValue(slice.slices().top())->isNumber();
+ isNumber[SideRight] = slice.slices().right()->isPrimitiveValue() && toCSSPrimitiveValue(slice.slices().right())->isNumber();
+ isNumber[SideBottom] = slice.slices().bottom()->isPrimitiveValue() && toCSSPrimitiveValue(slice.slices().bottom())->isNumber();
+ isNumber[SideLeft] = slice.slices().left()->isPrimitiveValue() && toCSSPrimitiveValue(slice.slices().left())->isNumber();
fill = slice.fill();
}
@@ -179,14 +179,14 @@ InterpolationValue CSSImageSliceInterpolationType::maybeConvertValue(const CSSVa
const CSSBorderImageSliceValue& slice = toCSSBorderImageSliceValue(value);
std::unique_ptr<InterpolableList> list = InterpolableList::create(SideIndexCount);
- const CSSPrimitiveValue* sides[SideIndexCount];
+ const CSSValue* sides[SideIndexCount];
sides[SideTop] = slice.slices().top();
sides[SideRight] = slice.slices().right();
sides[SideBottom] = slice.slices().bottom();
sides[SideLeft] = slice.slices().left();
for (size_t i = 0; i < SideIndexCount; i++) {
- const CSSPrimitiveValue& side = *sides[i];
+ const CSSPrimitiveValue& side = *toCSSPrimitiveValue(sides[i]);
DCHECK(side.isNumber() || side.isPercentage());
list->set(i, InterpolableNumber::create(side.getDoubleValue()));
}

Powered by Google App Engine
This is Rietveld 408576698