[webkit-changes] [WebKit/WebKit] 58eb1c: ASSERT(!m_beginTime) in SMILTimeContainer::begin f...

Fujii Hironori noreply at github.com
Wed Nov 2 15:49:22 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 58eb1cbd097a97a8d804e9346f3b15993af7447d
      https://github.com/WebKit/WebKit/commit/58eb1cbd097a97a8d804e9346f3b15993af7447d
  Author: Fujii Hironori <Hironori.Fujii at sony.com>
  Date:   2022-11-02 (Wed, 02 Nov 2022)

  Changed paths:
    A LayoutTests/svg/animations/start-animation-twice-crash-expected.txt
    A LayoutTests/svg/animations/start-animation-twice-crash.html
    M Source/WebCore/svg/SVGSVGElement.cpp
    M Source/WebCore/svg/animation/SMILTimeContainer.cpp
    M Source/WebCore/svg/animation/SMILTimeContainer.h

  Log Message:
  -----------
  ASSERT(!m_beginTime) in SMILTimeContainer::begin fires on many sites
https://bugs.webkit.org/show_bug.cgi?id=172490

Reviewed by Simon Fraser.

The assertion was ensuring the begin() wasn't called before, but it
was a wrong assertion. If a svg element is moved to a newly opened
document, begin() can be called multiple times. Removed the assertion,
and just return the function if the animation is already started.

* LayoutTests/svg/animations/start-animation-twice-crash-expected.txt: Added.
* LayoutTests/svg/animations/start-animation-twice-crash.html: Added.
* Source/WebCore/svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::insertedIntoAncestor):
* Source/WebCore/svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::begin):
* Source/WebCore/svg/animation/SMILTimeContainer.h:

Canonical link: https://commits.webkit.org/256253@main




More information about the webkit-changes mailing list