| Index: src/isolate.cc
|
| diff --git a/src/isolate.cc b/src/isolate.cc
|
| index 1aad57632f4d9bc2593d6df5f08578ef8085e3f4..bf0f533f5162fbca439d0d9b15f3aa00f9f3e8f9 100644
|
| --- a/src/isolate.cc
|
| +++ b/src/isolate.cc
|
| @@ -2990,7 +2990,11 @@ void Isolate::RunMicrotasks() {
|
| v8::Isolate::SuppressMicrotaskExecutionScope suppress(
|
| reinterpret_cast<v8::Isolate*>(this));
|
| is_running_microtasks_ = true;
|
| - RunMicrotasksInternal();
|
| + MaybeHandle<Object> maybe_exception;
|
| + MaybeHandle<Object> result = Execution::TryCall(
|
| + this, microtask_run(), factory()->undefined_value(), 0, NULL,
|
| + &maybe_exception);
|
| + //RunMicrotasksInternal();
|
| is_running_microtasks_ = false;
|
| FireMicrotasksCompletedCallback();
|
| }
|
| @@ -3021,7 +3025,6 @@ void Isolate::RunMicrotasksInternal() {
|
| &maybe_exception);
|
| handle_scope_implementer_->LeaveMicrotaskContext();
|
| // If execution is terminating, just bail out.
|
| - Handle<Object> exception;
|
| if (result.is_null() && maybe_exception.is_null()) {
|
| // Clear out any remaining callbacks in the queue.
|
| heap()->set_microtask_queue(heap()->empty_fixed_array());
|
|
|