Refactor: Move shader loading code to inner scope

This prevents the loaded shader data from persisting on the stack even
when it is no longer needed.
This commit is contained in:
Stephen Seo 2024-03-20 19:25:22 +09:00
parent d29d2434ab
commit 020993fb19

View file

@ -436,6 +436,12 @@ image::Bl dither::blue_noise(int width, int height, int threads,
}
}
// create compute pipeline.
VkPipelineLayout compute_pipeline_layout;
VkPipeline compute_pipeline;
utility::Cleanup cleanup_pipeline_layout{};
utility::Cleanup cleanup_pipeline{};
{
// Load shader.
std::vector<char> shader;
{
@ -453,12 +459,6 @@ image::Bl dither::blue_noise(int width, int height, int threads,
ifs.close();
}
// create compute pipeline.
VkPipelineLayout compute_pipeline_layout;
VkPipeline compute_pipeline;
utility::Cleanup cleanup_pipeline_layout{};
utility::Cleanup cleanup_pipeline{};
{
VkShaderModuleCreateInfo shader_module_create_info{};
shader_module_create_info.sType =
VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO;