| Index: runtime/vm/service.cc
|
| diff --git a/runtime/vm/service.cc b/runtime/vm/service.cc
|
| index 42e50a4a108e610df1af186d91eedd4259bedc8f..5e8800a4ea0d59b7403219d0fd2582cbcf50d1f0 100644
|
| --- a/runtime/vm/service.cc
|
| +++ b/runtime/vm/service.cc
|
| @@ -1101,7 +1101,7 @@ static bool ContainsNonInstance(const Object& obj) {
|
| }
|
|
|
|
|
| -static RawObject* LookupObjectId(Isolate* isolate,
|
| +static RawObject* LookupObjectId(Thread* thread,
|
| const char* arg,
|
| ObjectIdRing::LookupResult* kind) {
|
| *kind = ObjectIdRing::kValid;
|
| @@ -1113,7 +1113,7 @@ static RawObject* LookupObjectId(Isolate* isolate,
|
| *kind = ObjectIdRing::kInvalid;
|
| return Object::null();
|
| }
|
| - const Integer& obj = Integer::Handle(isolate->current_zone(),
|
| + const Integer& obj = Integer::Handle(thread->zone(),
|
| Smi::New(static_cast<intptr_t>(value)));
|
| return obj.raw();
|
| } else if (strcmp(arg, "bool-true") == 0) {
|
| @@ -1124,7 +1124,7 @@ static RawObject* LookupObjectId(Isolate* isolate,
|
| return Object::null();
|
| }
|
|
|
| - ObjectIdRing* ring = isolate->object_id_ring();
|
| + ObjectIdRing* ring = thread->isolate()->object_id_ring();
|
| ASSERT(ring != NULL);
|
| intptr_t id = -1;
|
| if (!GetIntegerId(arg, &id)) {
|
| @@ -1238,8 +1238,7 @@ static RawObject* LookupHeapObjectClasses(Isolate* isolate,
|
| return Object::sentinel().raw();
|
| }
|
| const char* encoded_id = parts[3];
|
| - String& id = String::Handle(isolate->current_zone(),
|
| - String::New(encoded_id));
|
| + String& id = String::Handle(String::New(encoded_id));
|
| id = String::DecodeIRI(id);
|
| if (id.IsNull()) {
|
| return Object::sentinel().raw();
|
| @@ -1399,7 +1398,8 @@ static RawObject* LookupHeapObjectMessage(Isolate* isolate,
|
| static RawObject* LookupHeapObject(Isolate* isolate,
|
| const char* id_original,
|
| ObjectIdRing::LookupResult* result) {
|
| - char* id = Thread::Current()->zone()->MakeCopyOfString(id_original);
|
| + Thread* thread = Thread::Current();
|
| + char* id = thread->zone()->MakeCopyOfString(id_original);
|
|
|
| // Parse the id by splitting at each '/'.
|
| const int MAX_PARTS = 8;
|
| @@ -1429,9 +1429,9 @@ static RawObject* LookupHeapObject(Isolate* isolate,
|
|
|
| if (strcmp(parts[0], "objects") == 0) {
|
| // Object ids look like "objects/1123"
|
| - Object& obj = Object::Handle(isolate->current_zone());
|
| + Object& obj = Object::Handle(thread->zone());
|
| ObjectIdRing::LookupResult lookup_result;
|
| - obj = LookupObjectId(isolate, parts[1], &lookup_result);
|
| + obj = LookupObjectId(thread, parts[1], &lookup_result);
|
| if (lookup_result != ObjectIdRing::kValid) {
|
| if (result != NULL) {
|
| *result = lookup_result;
|
| @@ -1779,8 +1779,7 @@ static bool Evaluate(Isolate* isolate, JSONStream* js) {
|
| PrintMissingParamError(js, "expression");
|
| return true;
|
| }
|
| - const String& expr_str =
|
| - String::Handle(isolate->current_zone(), String::New(expr));
|
| + const String& expr_str = String::Handle(String::New(expr));
|
| ObjectIdRing::LookupResult lookup_result;
|
| Object& obj = Object::Handle(LookupHeapObject(isolate, target_id,
|
| &lookup_result));
|
| @@ -1813,7 +1812,7 @@ static bool Evaluate(Isolate* isolate, JSONStream* js) {
|
| if ((obj.IsInstance() || obj.IsNull()) &&
|
| !ContainsNonInstance(obj)) {
|
| // We don't use Instance::Cast here because it doesn't allow null.
|
| - Instance& instance = Instance::Handle(isolate->current_zone());
|
| + Instance& instance = Instance::Handle();
|
| instance ^= obj.raw();
|
| const Object& result =
|
| Object::Handle(instance.Evaluate(expr_str,
|
| @@ -1853,8 +1852,7 @@ static bool EvaluateInFrame(Isolate* isolate, JSONStream* js) {
|
| ActivationFrame* frame = stack->FrameAt(framePos);
|
|
|
| const char* expr = js->LookupParam("expression");
|
| - const String& expr_str = String::Handle(isolate->current_zone(),
|
| - String::New(expr));
|
| + const String& expr_str = String::Handle(String::New(expr));
|
|
|
| const Object& result = Object::Handle(frame->Evaluate(expr_str));
|
| result.PrintJSON(js, true);
|
|
|