Fredrik Söderquist f628e6ffec Bug 1804103 [wpt PR 37329] - Fix resolving of SMIL intervals in the past, a=testonly
Automatic update from web-platform-tests
Fix resolving of SMIL intervals in the past

If the only active interval of a timed element was in the past when the
first interval was resolved, no interval would be resolved. This in turn
could mean that an animation should still apply after the active
duration ended (i.e because of fill=freeze) did not.

When computing the first interval for a timed element, then store/update
interval state after each resolved interval that is reject (because it's
in the past). This means that the initial interval state will reflect
the same state that it would get from essentially fast-fowarding through
the intervals. If an unresolved interval ends up being returned from
ResolveInterval() - like in the bug in question - then it will move the
previously resolved interval (`interval_`) into `previous_interval_`.
Thus there's no need to update `previous_interval_` in the resolve loop.
Setting `is_waiting_for_first_interval_` means that the correct active
state will be computed by `DetermineActiveState()`.

Fixed: 1395605
Change-Id: Iac185713f298608bd1d3337425fe32188a7670fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4079445
Commit-Queue: Philip Rogers <pdr@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Auto-Submit: Fredrik Söderquist <fs@opera.com>
Cr-Commit-Position: refs/heads/main@{#1079792}

--

wpt-commits: 9d2a7aff2f25e0c18f4906d945284e0beef4bf23
wpt-pr: 37329
2022-12-11 12:09:12 +00:00

An explanation of the Firefox Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://firefox-source-docs.mozilla.org/contributing/directory_structure.html

For information on how to build Firefox from the source code and create the patch see:

    https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html

If you have a question about developing Firefox, and can't find the solution
on https://firefox-source-docs.mozilla.org/, you can try asking your question on Matrix at chat.mozilla.org in `Introduction` (https://chat.mozilla.org/#/room/#introduction:mozilla.org) channel.


Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Firefox developers for
testing, may be buggy.
Description
Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Readme 6.1 GiB
Languages
JavaScript 32.3%
C++ 25.4%
HTML 21%
C 10.8%
Python 2.8%
Other 7.2%