| Index: runtime/vm/object.cc
|
| diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
|
| index 208769deac28799bc71794a21b65ab361b4c3d3e..ad89974c3e4a29d85ad048489cb8f71964caf12e 100644
|
| --- a/runtime/vm/object.cc
|
| +++ b/runtime/vm/object.cc
|
| @@ -18818,7 +18818,9 @@ void Capability::PrintJSONImpl(JSONStream* stream, bool ref) const {
|
| }
|
|
|
|
|
| -RawReceivePort* ReceivePort::New(Dart_Port id, Heap::Space space) {
|
| +RawReceivePort* ReceivePort::New(Dart_Port id,
|
| + bool is_control_port,
|
| + Heap::Space space) {
|
| Isolate* isolate = Isolate::Current();
|
| const SendPort& send_port = SendPort::Handle(isolate, SendPort::New(id));
|
|
|
| @@ -18831,7 +18833,11 @@ RawReceivePort* ReceivePort::New(Dart_Port id, Heap::Space space) {
|
| result ^= raw;
|
| result.raw_ptr()->send_port_ = send_port.raw();
|
| }
|
| - PortMap::SetLive(id);
|
| + if (is_control_port) {
|
| + PortMap::SetPortState(id, PortMap::kControlPort);
|
| + } else {
|
| + PortMap::SetPortState(id, PortMap::kLivePort);
|
| + }
|
| return result.raw();
|
| }
|
|
|
|
|