Skip to content

script: Replace IndexedDB's unsafe uses of RootedVec<JSVal>.#40143

Merged
jdm merged 1 commit intoservo:mainfrom
jdm:idb-gc-hazard
Oct 25, 2025
Merged

script: Replace IndexedDB's unsafe uses of RootedVec<JSVal>.#40143
jdm merged 1 commit intoservo:mainfrom
jdm:idb-gc-hazard

Conversation

@jdm
Copy link
Copy Markdown
Member

@jdm jdm commented Oct 24, 2025

While #40141 is filed to address the complete unsafe pattern, fixing the instances of this within the IndexedDB code is something that can happen today. It is not safe to store raw GC values inside of RootedVec; they need to be inside Heap wrappers, and those can't be stored in a vector that can reallocate without being wrapped inside of a Box.

Testing: Fixes an intermittent crashing test.
Fixes: #39766

@jdm jdm requested a review from gterzian as a code owner October 24, 2025 19:33
@servo-highfive servo-highfive added the S-awaiting-review There is new code that needs to be reviewed. label Oct 24, 2025
@servo-highfive servo-highfive removed the S-awaiting-review There is new code that needs to be reviewed. label Oct 24, 2025
@jdm jdm added this pull request to the merge queue Oct 25, 2025
@servo-highfive servo-highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Oct 25, 2025
Merged via the queue into servo:main with commit 38899a4 Oct 25, 2025
33 checks passed
@jdm jdm deleted the idb-gc-hazard branch October 25, 2025 01:02
@servo-highfive servo-highfive removed the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Oct 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Intermittent CRASH in /IndexedDB/nested-cloning-large.any.html

3 participants