|
Initialize GC mixin bases only when leftmost vtable has been initialized.
For GC mixin constructors that allocate on the Oilpan heap, extra care
is required. It is unsafe to fully construct these until the vptr for the
leftmost object that implement/provide the mixin has been initialized.
Should a (conservative) GC kick in while in that mixin's constructor, the
object reference to the object instance will be located through stack
scanning, but it will not as-yet have its trace method set up. The result
is failure to trace the object being constructed (including its mixin
base).
R=haraken
BUG= 420515
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=188695
Total comments: 3
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+113 lines, -35 lines) |
Patch |
|
M |
Source/core/svg/SVGAElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGCursorElement.cpp
|
View
|
|
1 chunk |
+3 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGFEImageElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGFilterElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGFitToViewBox.h
|
View
|
1
|
1 chunk |
+15 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGFitToViewBox.cpp
|
View
|
1
|
1 chunk |
+11 lines, -3 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGGradientElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGGraphicsElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGImageElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGMPathElement.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGMarkerElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGMaskElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGPatternElement.cpp
|
View
|
|
2 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGSVGElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGScriptElement.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGSymbolElement.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGTests.h
|
View
|
1
|
1 chunk |
+14 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGTests.cpp
|
View
|
1
|
1 chunk |
+12 lines, -4 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGTextPathElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGURIReference.h
|
View
|
1
|
1 chunk |
+14 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGURIReference.cpp
|
View
|
1
|
1 chunk |
+8 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGUseElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGViewElement.cpp
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/svg/SVGViewSpec.cpp
|
View
|
|
1 chunk |
+3 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/svg/animation/SVGSMILElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
Total messages: 6 (2 generated)
|