| Index: vm/dart_api_impl.cc
 | 
| ===================================================================
 | 
| --- vm/dart_api_impl.cc	(revision 1955)
 | 
| +++ vm/dart_api_impl.cc	(working copy)
 | 
| @@ -522,7 +522,7 @@
 | 
|  // TODO(iposva): This is a placeholder for the eventual external Dart API.
 | 
|  DART_EXPORT bool Dart_Initialize(int argc,
 | 
|                                   const char** argv,
 | 
| -                                 Dart_IsolateInitCallback callback) {
 | 
| +                                 Dart_IsolateCreateCallback callback) {
 | 
|    return Dart::InitOnce(argc, argv, callback);
 | 
|  }
 | 
|  
 | 
| @@ -539,24 +539,24 @@
 | 
|  
 | 
|  
 | 
|  DART_EXPORT Dart_Isolate Dart_CreateIsolate(const Dart_Snapshot* snapshot,
 | 
| -                                            void* data) {
 | 
| +                                            void* callback_data,
 | 
| +                                            char** error) {
 | 
|    Isolate* isolate = Dart::CreateIsolate();
 | 
|    ASSERT(isolate != NULL);
 | 
|    LongJump* base = isolate->long_jump_base();
 | 
|    LongJump jump;
 | 
|    isolate->set_long_jump_base(&jump);
 | 
|    if (setjmp(*jump.Set()) == 0) {
 | 
| -    Dart::InitializeIsolate(snapshot, data);
 | 
| +    Dart::InitializeIsolate(snapshot, callback_data);
 | 
|      START_TIMER(time_total_runtime);
 | 
|      isolate->set_long_jump_base(base);
 | 
|      return reinterpret_cast<Dart_Isolate>(isolate);
 | 
|    } else {
 | 
|      {
 | 
|        DARTSCOPE(isolate);
 | 
| -      const String& error =
 | 
| +      const String& errmsg =
 | 
|            String::Handle(isolate->object_store()->sticky_error());
 | 
| -      // TODO(asiva): Need to return this as a error.
 | 
| -      OS::PrintErr(error.ToCString());
 | 
| +      *error = strdup(errmsg.ToCString());
 | 
|      }
 | 
|      Dart::ShutdownIsolate();
 | 
|    }
 | 
| 
 |