Index: src/isolate.cc |
diff --git a/src/isolate.cc b/src/isolate.cc |
index 72df9b4b2b131794190e025049fe65f4e8e51362..82ad5fc8bd9ce4b242a1f4818d804418b31a4e89 100644 |
--- a/src/isolate.cc |
+++ b/src/isolate.cc |
@@ -2252,4 +2252,17 @@ void Isolate::FireCallCompletedCallback() { |
} |
+void Isolate::RunMicrotasks() { |
+ if (!microtask_pending()) |
+ return; |
+ |
+ ASSERT(handle_scope_implementer()->CallDepthIsZero()); |
+ |
+ // Increase call depth to prevent recursive callbacks. |
+ handle_scope_implementer()->IncrementCallDepth(); |
+ Execution::RunMicrotasks(this); |
+ handle_scope_implementer()->DecrementCallDepth(); |
+} |
+ |
+ |
} } // namespace v8::internal |