Chromium Code Reviews| Index: runtime/vm/service.cc |
| diff --git a/runtime/vm/service.cc b/runtime/vm/service.cc |
| index b6197457f009895304d7abc54918a42db62942d8..87be6ca5c64fef678b5de8c3f3f9919a0d533c7b 100644 |
| --- a/runtime/vm/service.cc |
| +++ b/runtime/vm/service.cc |
| @@ -48,11 +48,8 @@ ServiceIdZone::~ServiceIdZone() { |
| } |
| -RingServiceIdZone::RingServiceIdZone( |
| - ObjectIdRing* ring, ObjectIdRing::IdPolicy policy) |
| - : ring_(ring), |
| - policy_(policy) { |
| - ASSERT(ring_ != NULL); |
| +RingServiceIdZone::RingServiceIdZone() |
| + : ring_(NULL) { |
|
rmacnak
2015/08/18 21:09:00
policy_ uninitialized. Mac/Clang build will compla
Cutch
2015/08/18 21:50:18
Done.
|
| } |
| @@ -60,7 +57,15 @@ RingServiceIdZone::~RingServiceIdZone() { |
| } |
| +void RingServiceIdZone::Init( |
| + ObjectIdRing* ring, ObjectIdRing::IdPolicy policy) { |
| + ring_ = ring; |
| + policy_ = policy; |
| +} |
| + |
| + |
| char* RingServiceIdZone::GetServiceId(const Object& obj) { |
| + ASSERT(ring_ != NULL); |
| Thread* thread = Thread::Current(); |
| Zone* zone = thread->zone(); |
| ASSERT(zone != NULL); |
| @@ -1003,7 +1008,8 @@ static bool DumpIdZone(Isolate* isolate, JSONStream* js) { |
| ObjectIdRing* ring = isolate->object_id_ring(); |
| ASSERT(ring != NULL); |
| // When printing the ObjectIdRing, force object id reuse policy. |
| - RingServiceIdZone reuse_zone(ring, ObjectIdRing::kReuseId); |
| + RingServiceIdZone reuse_zone; |
| + reuse_zone.Init(ring, ObjectIdRing::kReuseId); |
| js->set_id_zone(&reuse_zone); |
| ring->PrintJSON(js); |
| return true; |