diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-02-06 00:48:16 +0100 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-02-06 00:48:16 +0100 |
commit | 7c9b585349c985df0cf6ace83da5dadba8b5c677 (patch) | |
tree | f22acdd5995354fa704855a57cc09d54392d902e /js/src/gc/Nursery.cpp | |
parent | e8417003899a4ec9274815be30352c1328fc32e9 (diff) | |
parent | a9b44dbcb33cd98b163f8a21223643f2cf3829cd (diff) | |
download | UXP-7c9b585349c985df0cf6ace83da5dadba8b5c677.tar UXP-7c9b585349c985df0cf6ace83da5dadba8b5c677.tar.gz UXP-7c9b585349c985df0cf6ace83da5dadba8b5c677.tar.lz UXP-7c9b585349c985df0cf6ace83da5dadba8b5c677.tar.xz UXP-7c9b585349c985df0cf6ace83da5dadba8b5c677.zip |
Merge branch 'ported-upstream'
Diffstat (limited to 'js/src/gc/Nursery.cpp')
-rw-r--r-- | js/src/gc/Nursery.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/js/src/gc/Nursery.cpp b/js/src/gc/Nursery.cpp index bce2b74aa..aa50bf29e 100644 --- a/js/src/gc/Nursery.cpp +++ b/js/src/gc/Nursery.cpp @@ -121,6 +121,13 @@ js::Nursery::Nursery(JSRuntime* rt) bool js::Nursery::init(uint32_t maxNurseryBytes, AutoLockGC& lock) { + if (!mallocedBuffers.init()) + return false; + + freeMallocedBuffersTask = js_new<FreeMallocedBuffersTask>(runtime()->defaultFreeOp()); + if (!freeMallocedBuffersTask || !freeMallocedBuffersTask->init()) + return false; + /* maxNurseryBytes parameter is rounded down to a multiple of chunk size. */ maxNurseryChunks_ = maxNurseryBytes >> ChunkShift; @@ -128,16 +135,9 @@ js::Nursery::init(uint32_t maxNurseryBytes, AutoLockGC& lock) if (maxNurseryChunks_ == 0) return true; - if (!mallocedBuffers.init()) - return false; - if (!cellsWithUid_.init()) return false; - freeMallocedBuffersTask = js_new<FreeMallocedBuffersTask>(runtime()->defaultFreeOp()); - if (!freeMallocedBuffersTask || !freeMallocedBuffersTask->init()) - return false; - AutoMaybeStartBackgroundAllocation maybeBgAlloc; updateNumChunksLocked(1, maybeBgAlloc, lock); if (numChunks() == 0) |