| Index: third_party/WebKit/Source/core/svg/SVGAnimationElement.cpp
|
| diff --git a/third_party/WebKit/Source/core/svg/SVGAnimationElement.cpp b/third_party/WebKit/Source/core/svg/SVGAnimationElement.cpp
|
| index a93258afa8a811d2cfe65c3f90397f1805a5575f..6c261cfc947509504a53b86e90d66029bde8b6d8 100644
|
| --- a/third_party/WebKit/Source/core/svg/SVGAnimationElement.cpp
|
| +++ b/third_party/WebKit/Source/core/svg/SVGAnimationElement.cpp
|
| @@ -533,8 +533,9 @@ void SVGAnimationElement::startedActiveInterval() {
|
| CalcMode calcMode = this->getCalcMode();
|
| if (calcMode == CalcModeSpline) {
|
| unsigned splinesCount = m_keySplines.size();
|
| - if (!splinesCount || (fastHasAttribute(SVGNames::keyPointsAttr) &&
|
| - m_keyPoints.size() - 1 != splinesCount) ||
|
| + if (!splinesCount ||
|
| + (fastHasAttribute(SVGNames::keyPointsAttr) &&
|
| + m_keyPoints.size() - 1 != splinesCount) ||
|
| (animationMode == ValuesAnimation &&
|
| m_values.size() - 1 != splinesCount) ||
|
| (fastHasAttribute(SVGNames::keyTimesAttr) &&
|
| @@ -566,10 +567,11 @@ void SVGAnimationElement::startedActiveInterval() {
|
| m_animationValid = calculateFromAndByValues(emptyString, by);
|
| } else if (animationMode == ValuesAnimation) {
|
| m_animationValid =
|
| - m_values.size() >= 1 && (calcMode == CalcModePaced ||
|
| - !fastHasAttribute(SVGNames::keyTimesAttr) ||
|
| - fastHasAttribute(SVGNames::keyPointsAttr) ||
|
| - (m_values.size() == m_keyTimes.size())) &&
|
| + m_values.size() >= 1 &&
|
| + (calcMode == CalcModePaced ||
|
| + !fastHasAttribute(SVGNames::keyTimesAttr) ||
|
| + fastHasAttribute(SVGNames::keyPointsAttr) ||
|
| + (m_values.size() == m_keyTimes.size())) &&
|
| (calcMode == CalcModeDiscrete || !m_keyTimes.size() ||
|
| m_keyTimes.back() == 1) &&
|
| (calcMode != CalcModeSpline ||
|
|
|