mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 808067 - Change the compartments we iterate over when ending GC (r=jonco)
This commit is contained in:
parent
ff0cd0b135
commit
3509e1737d
@ -4154,12 +4154,12 @@ AutoGCSlice::AutoGCSlice(JSRuntime *rt)
|
|||||||
|
|
||||||
AutoGCSlice::~AutoGCSlice()
|
AutoGCSlice::~AutoGCSlice()
|
||||||
{
|
{
|
||||||
for (GCCompartmentsIter c(runtime); !c.done(); c.next()) {
|
/* We can't use GCCompartmentsIter if this is the end of the last slice. */
|
||||||
|
for (CompartmentsIter c(runtime); !c.done(); c.next()) {
|
||||||
if (c->isGCMarking()) {
|
if (c->isGCMarking()) {
|
||||||
c->setNeedsBarrier(true, JSCompartment::UpdateIon);
|
c->setNeedsBarrier(true, JSCompartment::UpdateIon);
|
||||||
c->arenas.prepareForIncrementalGC(runtime);
|
c->arenas.prepareForIncrementalGC(runtime);
|
||||||
} else {
|
} else {
|
||||||
JS_ASSERT(c->isGCSweeping());
|
|
||||||
c->setNeedsBarrier(false, JSCompartment::UpdateIon);
|
c->setNeedsBarrier(false, JSCompartment::UpdateIon);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user