mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 906236 - Sweep DeclEnvObjects in the background; r=luke
This commit is contained in:
parent
c17dd3b37a
commit
74862ec49a
9
js/src/jit-test/tests/gc/bug-906236.js
Normal file
9
js/src/jit-test/tests/gc/bug-906236.js
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
// |jit-test| error: too much recursion
|
||||||
|
(function() {
|
||||||
|
(function f(x) {
|
||||||
|
return x * f(x - 1);
|
||||||
|
with({})
|
||||||
|
var r = ""
|
||||||
|
})()
|
||||||
|
})()
|
||||||
|
|
@ -333,6 +333,8 @@ Class DeclEnvObject::class_ = {
|
|||||||
DeclEnvObject *
|
DeclEnvObject *
|
||||||
DeclEnvObject::createTemplateObject(JSContext *cx, HandleFunction fun, gc::InitialHeap heap)
|
DeclEnvObject::createTemplateObject(JSContext *cx, HandleFunction fun, gc::InitialHeap heap)
|
||||||
{
|
{
|
||||||
|
JS_ASSERT(IsNurseryAllocable(FINALIZE_KIND));
|
||||||
|
|
||||||
RootedTypeObject type(cx, cx->getNewType(&class_, NULL));
|
RootedTypeObject type(cx, cx->getNewType(&class_, NULL));
|
||||||
if (!type)
|
if (!type)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -256,7 +256,7 @@ class DeclEnvObject : public ScopeObject
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
static const uint32_t RESERVED_SLOTS = 2;
|
static const uint32_t RESERVED_SLOTS = 2;
|
||||||
static const gc::AllocKind FINALIZE_KIND = gc::FINALIZE_OBJECT2;
|
static const gc::AllocKind FINALIZE_KIND = gc::FINALIZE_OBJECT2_BACKGROUND;
|
||||||
|
|
||||||
static Class class_;
|
static Class class_;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user