| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a | 
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "platform/assert.h" | 5 #include "platform/assert.h" | 
| 6 #include "vm/bootstrap_natives.h" | 6 #include "vm/bootstrap_natives.h" | 
| 7 #include "vm/class_finalizer.h" | 7 #include "vm/class_finalizer.h" | 
| 8 #include "vm/dart.h" | 8 #include "vm/dart.h" | 
| 9 #include "vm/dart_api_impl.h" | 9 #include "vm/dart_api_impl.h" | 
| 10 #include "vm/dart_entry.h" | 10 #include "vm/dart_entry.h" | 
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 54   const Object& result = | 54   const Object& result = | 
| 55       Object::Handle(isolate, DartEntry::InvokeFunction(func, args)); | 55       Object::Handle(isolate, DartEntry::InvokeFunction(func, args)); | 
| 56   if (!result.IsError()) { | 56   if (!result.IsError()) { | 
| 57     PortMap::SetLive(port_id); | 57     PortMap::SetLive(port_id); | 
| 58   } | 58   } | 
| 59   return result.raw(); | 59   return result.raw(); | 
| 60 } | 60 } | 
| 61 | 61 | 
| 62 | 62 | 
| 63 DEFINE_NATIVE_ENTRY(RawReceivePortImpl_factory, 1) { | 63 DEFINE_NATIVE_ENTRY(RawReceivePortImpl_factory, 1) { | 
| 64   ASSERT(AbstractTypeArguments::CheckedHandle( | 64   ASSERT(TypeArguments::CheckedHandle(arguments->NativeArgAt(0)).IsNull()); | 
| 65       arguments->NativeArgAt(0)).IsNull()); |  | 
| 66   Dart_Port port_id = | 65   Dart_Port port_id = | 
| 67       PortMap::CreatePort(arguments->isolate()->message_handler()); | 66       PortMap::CreatePort(arguments->isolate()->message_handler()); | 
| 68   const Object& port = Object::Handle(ReceivePortCreate(port_id)); | 67   const Object& port = Object::Handle(ReceivePortCreate(port_id)); | 
| 69   if (port.IsError()) { | 68   if (port.IsError()) { | 
| 70     Exceptions::PropagateError(Error::Cast(port)); | 69     Exceptions::PropagateError(Error::Cast(port)); | 
| 71   } | 70   } | 
| 72   return port.raw(); | 71   return port.raw(); | 
| 73 } | 72 } | 
| 74 | 73 | 
| 75 | 74 | 
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 245 | 244 | 
| 246   // The control port is being accessed as a regular port from Dart code. This | 245   // The control port is being accessed as a regular port from Dart code. This | 
| 247   // is most likely due to the _startIsolate code in dart:isolate. Account for | 246   // is most likely due to the _startIsolate code in dart:isolate. Account for | 
| 248   // this by increasing the number of open control ports. | 247   // this by increasing the number of open control ports. | 
| 249   isolate->message_handler()->increment_control_ports(); | 248   isolate->message_handler()->increment_control_ports(); | 
| 250 | 249 | 
| 251   return port.raw(); | 250   return port.raw(); | 
| 252 } | 251 } | 
| 253 | 252 | 
| 254 }  // namespace dart | 253 }  // namespace dart | 
| OLD | NEW | 
|---|