WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
321274
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
Details
Screen recording test case Safari
(220.50 KB, video/mp4)
2026-08-07 04:28 PDT
,
Razvan Caliman
no flags
Details
Screen recording test case Chrome
(130.92 KB, video/mp4)
2026-08-07 04:28 PDT
,
Razvan Caliman
no flags
Details
Screen recording nerdy.dev
(554.84 KB, video/mp4)
2026-08-07 04:31 PDT
,
Razvan Caliman
no flags
Details
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2026-08-07 04:25:17 PDT
<
rdar://problem/184322389
>
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
Pull request:
https://github.com/WebKit/WebKit/pull/71783
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.
Top of Page
Format For Printing
XML
Clone This Bug