From 12d841a3f5d227e6ab19bf4defc2a8e63e8ba1b6 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Fri, 19 May 2023 18:21:42 -0700 Subject: [node:vm] Fix crash in syntax error in `runinThisContext` --- src/bun.js/bindings/NodeVMScript.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/bun.js/bindings/NodeVMScript.cpp') diff --git a/src/bun.js/bindings/NodeVMScript.cpp b/src/bun.js/bindings/NodeVMScript.cpp index e4d14265b..62de103fe 100644 --- a/src/bun.js/bindings/NodeVMScript.cpp +++ b/src/bun.js/bindings/NodeVMScript.cpp @@ -342,12 +342,12 @@ JSC_DEFINE_HOST_FUNCTION(vmModuleRunInThisContext, (JSGlobalObject * globalObjec proxy->setTarget(vm, globalObject); context->setPrototypeDirect(vm, proxy); - JSScope* contextScope = JSWithScope::create(vm, globalObject, globalObject->globalScope(), context); - auto* executable = JSC::DirectEvalExecutable::create( globalObject, source, DerivedContextType::None, NeedsClassFieldInitializer::No, PrivateBrandRequirement::None, false, false, EvalContextType::None, nullptr, nullptr, ECMAMode::sloppy()); + RETURN_IF_EXCEPTION(throwScope, {}); + JSScope* contextScope = JSWithScope::create(vm, globalObject, globalObject->globalScope(), context); auto catchScope = DECLARE_CATCH_SCOPE(vm); JSValue result = vm.interpreter.executeEval(executable, globalObject, contextScope); if (UNLIKELY(catchScope.exception())) { -- cgit v1.2.3