From a8f410ed40d0d58410e3038732ed4e0e8deaaacb Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 11 Apr 2021 01:49:41 +0200 Subject: [PATCH] slang_preprocess_parse_parameters - get rid of one local variable --- gfx/drivers_shader/slang_process.cpp | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/gfx/drivers_shader/slang_process.cpp b/gfx/drivers_shader/slang_process.cpp index af122685c5..7768f9cfa3 100644 --- a/gfx/drivers_shader/slang_process.cpp +++ b/gfx/drivers_shader/slang_process.cpp @@ -333,9 +333,9 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta, * initialized to something sane. */ for (i = 0; i < meta.parameters.size(); i++) { - bool mismatch_dup = false; - bool dup = false; - auto itr = std::find_if(shader->parameters, + struct video_shader_parameter *p = NULL; + bool mismatch_dup = false; + auto itr = std::find_if(shader->parameters, shader->parameters + shader->num_parameters, [&](const video_shader_parameter &parsed_param) { @@ -344,7 +344,6 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta, if (itr != shader->parameters + shader->num_parameters) { - dup = true; /* Allow duplicate #pragma parameter, but only * if they are exactly the same. */ if ( meta.parameters[i].desc != itr->desc || @@ -358,21 +357,18 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta, itr->id); mismatch_dup = true; } + else + continue; } - if (dup && !mismatch_dup) - continue; - if (mismatch_dup || shader->num_parameters == GFX_MAX_PARAMETERS) { shader->num_parameters = old_num_parameters; return false; } - struct video_shader_parameter *p = (struct video_shader_parameter*) - &shader->parameters[shader->num_parameters++]; - - if (!p) + if (!(p = (struct video_shader_parameter*) + &shader->parameters[shader->num_parameters++])) continue; strlcpy(p->id, meta.parameters[i].id.c_str(), sizeof(p->id));