RESOLVED FIXED321274
Page freezes with CSS transition duration calc(infinity * 1s)
https://bugs.webkit.org/show_bug.cgi?id=321274
Summary Page freezes with CSS transition duration calc(infinity * 1s)
Razvan Caliman
Reported 2026-08-07 04:25:12 PDT
Created attachment 480964 [details] test case Found on https://nerdy.dev/css-infinity-use-cases in the Perma-state example. Attached reduced test case. Hovering over elements that have `transition: background calc(infinity * 1s) ease;` freezes the page. Scrolling is unresponsive.
Attachments
test case (1.99 KB, text/html)
2026-08-07 04:25 PDT, Razvan Caliman
no flags
Screen recording test case Safari (220.50 KB, video/mp4)
2026-08-07 04:28 PDT, Razvan Caliman
no flags
Screen recording test case Chrome (130.92 KB, video/mp4)
2026-08-07 04:28 PDT, Razvan Caliman
no flags
Screen recording nerdy.dev (554.84 KB, video/mp4)
2026-08-07 04:31 PDT, Razvan Caliman
no flags
Radar WebKit Bug Importer
Comment 1 2026-08-07 04:25:17 PDT
Razvan Caliman
Comment 2 2026-08-07 04:28:09 PDT
Created attachment 480965 [details] Screen recording test case Safari
Razvan Caliman
Comment 3 2026-08-07 04:28:29 PDT
Created attachment 480966 [details] Screen recording test case Chrome
Razvan Caliman
Comment 4 2026-08-07 04:31:09 PDT
Created attachment 480967 [details] Screen recording nerdy.dev
Antoine Quint
Comment 5 2026-08-17 08:55:47 PDT
We're hung in `UnitBezier::solveCurveX()`.
Antoine Quint
Comment 6 2026-08-17 09:01:56 PDT
This is similar to bug 297596 which we addressed by adding this check to `TimingFunction::transformProgress()`: if (function.isLinear() || duration >= std::numeric_limits<double>::max()) return progress; In this case, we're somehow below `std::numeric_limits<double>::max()` (1.7266105117235917E+308), probably due to how we resolve the value from the `calc(infinity * 1s)` value. Will need to find a better check.
Antoine Quint
Comment 7 2026-08-17 09:49:03 PDT
Antoine Quint
Comment 8 2026-08-17 09:51:17 PDT
Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/61991
EWS
Comment 9 2026-08-28 03:26:22 PDT
Committed 320034@main (029da7d3d074): <https://commits.webkit.org/320034@main> Reviewed commits have been landed. Closing PR #71783 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.