| Index: runtime/vm/dart_entry.cc
 | 
| ===================================================================
 | 
| --- runtime/vm/dart_entry.cc	(revision 34429)
 | 
| +++ runtime/vm/dart_entry.cc	(working copy)
 | 
| @@ -493,9 +493,9 @@
 | 
|  }
 | 
|  
 | 
|  
 | 
| -bool DartLibraryCalls::IsSendPort(const Instance& send_port) {
 | 
| +bool DartLibraryCalls::IsSendPort(const Instance& obj) {
 | 
|    // Get instance class.
 | 
| -  const Class& cls = Class::Handle(send_port.clazz());
 | 
| +  const Class& cls = Class::Handle(obj.clazz());
 | 
|    // Get send port class from isolate library.
 | 
|    const Library& isolate_lib = Library::Handle(Library::IsolateLibrary());
 | 
|    const Class& send_port_cls = Class::Handle(
 | 
| @@ -505,4 +505,17 @@
 | 
|    return cls.id() == send_port_cls.id();
 | 
|  }
 | 
|  
 | 
| +
 | 
| +bool DartLibraryCalls::IsReceivePort(const Instance& obj) {
 | 
| +  // Get instance class.
 | 
| +  const Class& cls = Class::Handle(obj.clazz());
 | 
| +  // Get send port class from isolate library.
 | 
| +  const Library& isolate_lib = Library::Handle(Library::IsolateLibrary());
 | 
| +  const Class& recv_port_cls = Class::Handle(
 | 
| +      isolate_lib.LookupClassAllowPrivate(Symbols::_RawReceivePortImpl()));
 | 
| +  // Check for the same class id.
 | 
| +  ASSERT(!recv_port_cls.IsNull());
 | 
| +  return cls.id() == recv_port_cls.id();
 | 
| +}
 | 
| +
 | 
|  }  // namespace dart
 | 
| 
 |