From 359baffe8fe2b5aa939b39c50f6356c5a7df298e Mon Sep 17 00:00:00 2001 From: Chinmay Garde Date: Wed, 11 May 2016 16:01:02 -0700 Subject: [PATCH] In case the script snapshotter fails on Dart_Initialize, dump the message. (#2681) --- engine/src/flutter/sky/tools/sky_snapshot/vm.cc | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/engine/src/flutter/sky/tools/sky_snapshot/vm.cc b/engine/src/flutter/sky/tools/sky_snapshot/vm.cc index 973343427c..4f87b4a500 100644 --- a/engine/src/flutter/sky/tools/sky_snapshot/vm.cc +++ b/engine/src/flutter/sky/tools/sky_snapshot/vm.cc @@ -8,6 +8,8 @@ #include "sky/tools/sky_snapshot/loader.h" #include "sky/tools/sky_snapshot/logging.h" +#include + extern "C" { extern void* kDartVmIsolateSnapshotBuffer; extern void* kDartIsolateSnapshotBuffer; @@ -26,10 +28,15 @@ static const char* kDartArgs[] = { void InitDartVM() { CHECK(Dart_SetVMFlags(arraysize(kDartArgs), kDartArgs)); - CHECK(Dart_Initialize( - reinterpret_cast(&kDartVmIsolateSnapshotBuffer), nullptr, - nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, - nullptr, nullptr, nullptr, nullptr, nullptr) == nullptr); + char* init_message = Dart_Initialize( + reinterpret_cast(&kDartVmIsolateSnapshotBuffer), nullptr, + nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, + nullptr, nullptr, nullptr, nullptr); + if (init_message != nullptr) { + std::cerr << "Dart_Initialize Error: " << init_message << std::endl; + free(init_message); + CHECK(false); + } } Dart_Isolate CreateDartIsolate() {