From fcfb6486266a817ccedd44ea88cc1b60864e8073 Mon Sep 17 00:00:00 2001 From: Ashton Meuser Date: Wed, 25 Mar 2026 14:16:50 -0700 Subject: [PATCH] Throw stack overflow --- src/Lua/Runtime/LuaVirtualMachine.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Lua/Runtime/LuaVirtualMachine.cs b/src/Lua/Runtime/LuaVirtualMachine.cs index b7ee568d..e8b5af76 100644 --- a/src/Lua/Runtime/LuaVirtualMachine.cs +++ b/src/Lua/Runtime/LuaVirtualMachine.cs @@ -339,6 +339,11 @@ enum PostOperationType internal static ValueTask ExecuteClosureAsync(LuaState state, CancellationToken cancellationToken) { + if (!RuntimeHelpers.TryEnsureSufficientExecutionStack()) + { + throw new LuaStackOverflowException(); + } + ref readonly var frame = ref state.GetCurrentFrame(); var context = VirtualMachineExecutionContext.Get(state, in frame,