slang_preprocess_parse_parameters - get rid of one local variable

This commit is contained in:
twinaphex 2021-04-11 01:49:41 +02:00
parent f29a4b51cc
commit a8f410ed40

View File

@ -333,8 +333,8 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta,
* initialized to something sane. */
for (i = 0; i < meta.parameters.size(); i++)
{
struct video_shader_parameter *p = NULL;
bool mismatch_dup = false;
bool 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,10 +357,9 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta,
itr->id);
mismatch_dup = true;
}
}
if (dup && !mismatch_dup)
else
continue;
}
if (mismatch_dup || shader->num_parameters == GFX_MAX_PARAMETERS)
{
@ -369,10 +367,8 @@ bool slang_preprocess_parse_parameters(glslang_meta& meta,
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));