Index: runtime/vm/dart.cc |
diff --git a/runtime/vm/dart.cc b/runtime/vm/dart.cc |
index f872fa17b3fda4b55a769741d0ae976d622c1446..07cdcdc1fd4d5662ec39a65224617601e2f64bcf 100644 |
--- a/runtime/vm/dart.cc |
+++ b/runtime/vm/dart.cc |
@@ -610,16 +610,18 @@ RawError* Dart::InitializeIsolate(const uint8_t* snapshot_data, |
I->class_table()->Print(); |
} |
+ bool is_kernel_isolate = false; |
#ifndef DART_PRECOMPILED_RUNTIME |
KernelIsolate::InitCallback(I); |
+ is_kernel_isolate = KernelIsolate::IsKernelIsolate(I); |
#endif |
ServiceIsolate::MaybeMakeServiceIsolate(I); |
- if (!ServiceIsolate::IsServiceIsolate(I) && |
- !KernelIsolate::IsKernelIsolate(I)) { |
+ if (!ServiceIsolate::IsServiceIsolate(I) && !is_kernel_isolate) { |
I->message_handler()->set_should_pause_on_start( |
FLAG_pause_isolates_on_start); |
I->message_handler()->set_should_pause_on_exit(FLAG_pause_isolates_on_exit); |
} |
+ |
ServiceIsolate::SendIsolateStartupMessage(); |
if (FLAG_support_debugger) { |
I->debugger()->NotifyIsolateCreated(); |