Commit 94d243b6 authored by mythria's avatar mythria Committed by Commit bot

Disables MinorGC from collecting object wrappers

The current minor GC collects all unmodified wrappers that are not active. It does not take care about references. Hence, it is not safe to mark any object that might contain a reference as not active. Several object wrappers could have references, so disabled collecting them during minor GC.

BUG=553054

Review URL: https://codereview.chromium.org/1464783002

Cr-Commit-Position: refs/heads/master@{#361339}
parent 0ca81d5b
......@@ -112,6 +112,13 @@ public:
return;
}
// MinorGC does not collect objects because it may be expensive to
// update references during minorGC
if (classId == WrapperTypeInfo::ObjectClassId) {
v8::Persistent<v8::Object>::Cast(*value).MarkActive();
return;
}
v8::Local<v8::Object> wrapper = v8::Local<v8::Object>::New(m_isolate, v8::Persistent<v8::Object>::Cast(*value));
ASSERT(V8DOMWrapper::hasInternalFieldsSet(wrapper));
const WrapperTypeInfo* type = toWrapperTypeInfo(wrapper);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment