[SVG] Handle non-SVGAnimateElement results in calculateAnimatedValue()

Currently, SVGAnimateElement::calculateAnimatedValue() assumes that the
result element is a subtype of SVGAnimateElement, but that is not always
the case: SMILTimeContainer::updateAnimations() may pick an
SVGAnimateMotionElement for the result.

This CL is a workaround - we should take a good look at the SVG
animation type hierarchy and figure out why this is needed.

BUG=333176
R=pdr@chromium.org

Review URL: https://codereview.chromium.org/133893005

git-svn-id: svn://svn.chromium.org/blink/trunk@165009 bbb929c8-8fbe-4397-9dbb-9b2b20218538
bool SVGAnimateElement::isAdditive() const
{
    if (animationMode() == ByAnimation || animationMode() == FromByAnimation)
        if (!animatedPropertyTypeSupportsAddition())
            return false;

    return SVGAnimationElement::isAdditive();
}

bool SVGAnimateElement::isAdditive() const
{
    if (animationMode() == ByAnimation || animationMode() == FromByAnimation)
        if (!animatedPropertyTypeSupportsAddition())
            return false;

    return SVGAnimationElement::isAdditive();
}
