DescriptionDisallow heap objects containing unsafe on-heap iterators.
Do not allow BlinkGC managed objects to include unsafe iterators of
other heap objects; that is, do not allow them to keep iterator
part objects as fields.
These iterators contain untraced references, which is in general
unsafe practice and breaks the general rule that all heap references
must be known to the GC infrastructure, and be marked and traced
through.
This applies to all heap collection iterators but HeapListHashSet<>'s,
which can be safely traced. It is also the only collection iterator
which is kept as a field of an on-heap object (CSSSegmentedFontFace.)
R=haraken
BUG=672030
Committed: https://crrev.com/1fb76ab1b86a2c6f1c2b8512b7bf39701a2a756f
Cr-Commit-Position: refs/heads/master@{#439784}
Patch Set 1 #Patch Set 2 : remove comment #Patch Set 3 : insist that safe iterators are traced #Patch Set 4 : formatting #
Total comments: 2
Messages
Total messages: 25 (14 generated)
|