Index: runtime/vm/isolate.cc |
diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc |
index 328624b87f05c6b2649b7974d757506d5ddc776d..db95294358158c7b9427a02d4ed10c06e0616782 100644 |
--- a/runtime/vm/isolate.cc |
+++ b/runtime/vm/isolate.cc |
@@ -1454,11 +1454,8 @@ static void ShutdownIsolate(uword parameter) { |
} |
Dart::RunShutdownCallback(); |
} |
- { |
- // Shut the isolate down. |
- SwitchIsolateScope switch_scope(isolate); |
- Dart::ShutdownIsolate(); |
- } |
+ // Shut the isolate down. |
+ Dart::ShutdownIsolate(isolate); |
} |
@@ -1664,6 +1661,9 @@ void Isolate::Shutdown() { |
Thread* thread = Thread::Current(); |
+ // Don't allow anymore dart code to execution on this isolate. |
+ ClearStackLimit(); |
+ |
// First, perform higher-level cleanup that may need to allocate. |
{ |
// Ensure we have a zone and handle scope so that we can call VM functions. |