[PATCH 3/5] d3d10/effect: Use case-insensitive comparison in GetVariableBySemantic().
Nikolay Sivov
nsivov at codeweavers.com
Fri Sep 3 04:30:03 CDT 2021
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/d3d10/effect.c | 4 ++--
dlls/d3d10/tests/effect.c | 6 ++++++
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c
index 6e429c32b2d..5efeb2901c0 100644
--- a/dlls/d3d10/effect.c
+++ b/dlls/d3d10/effect.c
@@ -3322,7 +3322,7 @@ static struct ID3D10EffectVariable * STDMETHODCALLTYPE d3d10_effect_GetVariableB
{
struct d3d10_effect_variable *v = &l->members[j];
- if (v->semantic && !strcmp(v->semantic, semantic))
+ if (v->semantic && !stricmp(v->semantic, semantic))
{
TRACE("Returning variable %p.\n", v);
return &v->ID3D10EffectVariable_iface;
@@ -3334,7 +3334,7 @@ static struct ID3D10EffectVariable * STDMETHODCALLTYPE d3d10_effect_GetVariableB
{
struct d3d10_effect_variable *v = &This->local_variables[i];
- if (v->semantic && !strcmp(v->semantic, semantic))
+ if (v->semantic && !stricmp(v->semantic, semantic))
{
TRACE("Returning variable %p.\n", v);
return &v->ID3D10EffectVariable_iface;
diff --git a/dlls/d3d10/tests/effect.c b/dlls/d3d10/tests/effect.c
index df9777491b6..a448ba83714 100644
--- a/dlls/d3d10/tests/effect.c
+++ b/dlls/d3d10/tests/effect.c
@@ -3850,6 +3850,9 @@ static void test_effect_get_variable_by(void)
variable = effect->lpVtbl->GetVariableBySemantic(effect, "SV_POSITION");
ok(variable_by_index == variable, "GetVariableBySemantic got %p, expected %p\n", variable, variable_by_index);
+ variable = effect->lpVtbl->GetVariableBySemantic(effect, "sv_POSITION");
+ ok(variable_by_index == variable, "GetVariableBySemantic got %p, expected %p\n", variable, variable_by_index);
+
/* variable f2 */
variable_by_index = effect->lpVtbl->GetVariableByIndex(effect, 1);
ok(null_variable != variable_by_index, "GetVariableByIndex failed %p\n", variable_by_index);
@@ -3860,6 +3863,9 @@ static void test_effect_get_variable_by(void)
variable = effect->lpVtbl->GetVariableBySemantic(effect, "COLOR0");
ok(variable_by_index == variable, "GetVariableBySemantic got %p, expected %p\n", variable, variable_by_index);
+ variable = effect->lpVtbl->GetVariableBySemantic(effect, "color0");
+ ok(variable_by_index == variable, "GetVariableBySemantic got %p, expected %p\n", variable, variable_by_index);
+
/* variable f3 */
variable_by_index = effect->lpVtbl->GetVariableByIndex(effect, 2);
ok(null_variable != variable_by_index, "GetVariableByIndex failed %p\n", variable_by_index);
--
2.33.0
More information about the wine-devel
mailing list