From 78895c709c61eaff5450aed55744cbf7d2e491e6 Mon Sep 17 00:00:00 2001 From: nikitalita <69168929+nikitalita@users.noreply.github.com> Date: Sat, 9 Nov 2024 00:07:33 -0600 Subject: [PATCH] Prevent stack-use-after-scope in rendering_device_driver_metal.mm --- drivers/metal/rendering_device_driver_metal.mm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/metal/rendering_device_driver_metal.mm b/drivers/metal/rendering_device_driver_metal.mm index 4da11ecd219..39ca90d5a34 100644 --- a/drivers/metal/rendering_device_driver_metal.mm +++ b/drivers/metal/rendering_device_driver_metal.mm @@ -1978,7 +1978,8 @@ Vector RenderingDeviceDriverMetal::shader_compile_binary_from_spirv(Vec ERR_FAIL_COND_V_MSG(compiler.get_entry_points_and_stages().size() != 1, Result(), "Expected a single entry point and stage."); - EntryPoint &entry_point_stage = compiler.get_entry_points_and_stages().front(); + SmallVector entry_pts_stages = compiler.get_entry_points_and_stages(); + EntryPoint &entry_point_stage = entry_pts_stages.front(); SPIREntryPoint &entry_point = compiler.get_entry_point(entry_point_stage.name, entry_point_stage.execution_model); // Process specialization constants.