Index: src/liveedit.cc |
diff --git a/src/liveedit.cc b/src/liveedit.cc |
index e670b442b6d5033c4734d307a3cc74c9d094d537..dfe6264520f90cf7605742bda3b5c3f78bc79df9 100644 |
--- a/src/liveedit.cc |
+++ b/src/liveedit.cc |
@@ -601,7 +601,9 @@ static void CompileScriptForTracker(Isolate* isolate, Handle<Script> script) { |
PostponeInterruptsScope postpone(isolate); |
// Build AST. |
- CompilationInfo info(script); |
+ Zone zone(isolate); |
+ CompilationInfo info(script, &zone); |
+ ZoneScope scope(&zone, DELETE_ON_EXIT); |
info.MarkAsGlobal(); |
// Parse and don't allow skipping lazy functions. |
if (ParserApi::Parse(&info, kNoParsingFlags)) { |
@@ -894,7 +896,6 @@ class FunctionInfoListener { |
JSArray* LiveEdit::GatherCompileInfo(Handle<Script> script, |
Handle<String> source) { |
Isolate* isolate = Isolate::Current(); |
- ZoneScope zone_scope(isolate, DELETE_ON_EXIT); |
FunctionInfoListener listener; |
Handle<Object> original_source = Handle<Object>(script->source()); |
@@ -993,10 +994,11 @@ static void ReplaceCodeObject(Code* original, Code* substitution) { |
HeapIterator iterator; |
AssertNoAllocation no_allocations_please; |
+ Zone* zone = Isolate::Current()->runtime_zone(); |
// A zone scope for ReferenceCollectorVisitor. |
- ZoneScope scope(Isolate::Current(), DELETE_ON_EXIT); |
+ ZoneScope scope(zone, DELETE_ON_EXIT); |
- ReferenceCollectorVisitor visitor(original, Isolate::Current()->zone()); |
+ ReferenceCollectorVisitor visitor(original, zone); |
// Iterate over all roots. Stack frames may have pointer into original code, |
// so temporary replace the pointers with offset numbers |
@@ -1602,7 +1604,7 @@ static const char* DropActivationsInActiveThread( |
Zone* zone) { |
Isolate* isolate = Isolate::Current(); |
Debug* debug = isolate->debug(); |
- ZoneScope scope(isolate, DELETE_ON_EXIT); |
+ ZoneScope scope(zone, DELETE_ON_EXIT); |
Vector<StackFrame*> frames = CreateStackMap(zone); |
int array_len = Smi::cast(shared_info_array->length())->value(); |