diff --git a/Userland/Libraries/LibWeb/Bindings/MainThreadVM.cpp b/Userland/Libraries/LibWeb/Bindings/MainThreadVM.cpp index 23af392bd7..01d155af7e 100644 --- a/Userland/Libraries/LibWeb/Bindings/MainThreadVM.cpp +++ b/Userland/Libraries/LibWeb/Bindings/MainThreadVM.cpp @@ -247,10 +247,7 @@ JS::VM& main_thread_vm() } else { // FIXME: We need to setup a dummy execution context in case a JS::NativeFunction is called when processing the job. // This is because JS::NativeFunction::call excepts something to be on the execution context stack to be able to get the caller context to initialize the environment. - // Since this requires pushing an execution context onto the stack, it also requires a global object. The only thing we can get a global object from in this case is the script or module. - // To do this, we must assume script or module is not Empty. We must also assume that it is a Script Record for now as we don't currently run modules. // Do note that the JS spec gives _no_ guarantee that the execution context stack has something on it if HostEnqueuePromiseJob was called with a null realm: https://tc39.es/ecma262/#job-preparedtoevaluatecode - VERIFY(script_or_module.has>()); dummy_execution_context = JS::ExecutionContext { vm->heap() }; dummy_execution_context->script_or_module = script_or_module; vm->push_execution_context(dummy_execution_context.value());