| 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();
|
| }
|
|
|