| Index: Source/core/dom/Microtask.cpp
|
| diff --git a/Source/core/dom/Microtask.cpp b/Source/core/dom/Microtask.cpp
|
| index 9340c1df4780ce2ef665054201638b4cb02b27e4..56de67277d06b9b141435a0f1769d19bbdb97e19 100644
|
| --- a/Source/core/dom/Microtask.cpp
|
| +++ b/Source/core/dom/Microtask.cpp
|
| @@ -33,6 +33,7 @@
|
|
|
| #include "bindings/core/v8/V8PerIsolateData.h"
|
| #include "bindings/core/v8/V8RecursionScope.h"
|
| +#include "platform/ScriptForbiddenScope.h"
|
| #include "platform/Task.h"
|
| #include "public/platform/WebThread.h"
|
| #include <v8.h>
|
| @@ -44,7 +45,7 @@ void Microtask::performCheckpoint()
|
| v8::Isolate* isolate = v8::Isolate::GetCurrent();
|
| V8PerIsolateData* isolateData = V8PerIsolateData::from(isolate);
|
| ASSERT(isolateData);
|
| - if (isolateData->recursionLevel() || isolateData->performingMicrotaskCheckpoint() || isolateData->destructionPending())
|
| + if (isolateData->recursionLevel() || isolateData->performingMicrotaskCheckpoint() || isolateData->destructionPending() || ScriptForbiddenScope::isScriptForbidden())
|
| return;
|
| isolateData->setPerformingMicrotaskCheckpoint(true);
|
| {
|
|
|