| Index: runtime/vm/isolate.cc
|
| diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc
|
| index f443e17b97ac02b76a2496408ad36e804e00e04f..997be09b3749453806a888a3e29f765b8b911383 100644
|
| --- a/runtime/vm/isolate.cc
|
| +++ b/runtime/vm/isolate.cc
|
| @@ -1649,6 +1649,9 @@ void Isolate::LowLevelShutdown() {
|
|
|
| void Isolate::Shutdown() {
|
| ASSERT(this == Isolate::Current());
|
| + // Wait until all background compilation has finished.
|
| + BackgroundCompiler::Stop(background_compiler_);
|
| +
|
| #if defined(DEBUG)
|
| if (heap_ != NULL) {
|
| // The VM isolate keeps all objects marked.
|
| @@ -1656,9 +1659,6 @@ void Isolate::Shutdown() {
|
| }
|
| #endif // DEBUG
|
|
|
| - // Wait until all background compilation has finished.
|
| - BackgroundCompiler::Stop(background_compiler_);
|
| -
|
| Thread* thread = Thread::Current();
|
|
|
| // Don't allow anymore dart code to execution on this isolate.
|
| @@ -1938,6 +1938,7 @@ void Isolate::set_default_tag(const UserTag& tag) {
|
|
|
|
|
| void Isolate::set_deoptimized_code_array(const GrowableObjectArray& value) {
|
| + ASSERT(Thread::Current()->IsMutatorThread());
|
| deoptimized_code_array_ = value.raw();
|
| }
|
|
|
|
|