[PATCH 5/5] d3d10/effect: Use case-insensitive comparison in GetMemberBySemantic().

Nikolay Sivov nsivov at codeweavers.com
Fri Sep 3 04:30:05 CDT 2021


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/d3d10/effect.c       | 2 +-
 dlls/d3d10/tests/effect.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c
index 5ade60537ef..6d12920c762 100644
--- a/dlls/d3d10/effect.c
+++ b/dlls/d3d10/effect.c
@@ -4109,7 +4109,7 @@ static struct ID3D10EffectVariable * STDMETHODCALLTYPE d3d10_effect_variable_Get
     {
         struct d3d10_effect_variable *m = &This->members[i];
 
-        if (m->semantic && !strcmp(m->semantic, semantic))
+        if (m->semantic && !stricmp(m->semantic, semantic))
         {
             TRACE("Returning member %p\n", m);
             return &m->ID3D10EffectVariable_iface;
diff --git a/dlls/d3d10/tests/effect.c b/dlls/d3d10/tests/effect.c
index 029d4271b14..60db5ad55be 100644
--- a/dlls/d3d10/tests/effect.c
+++ b/dlls/d3d10/tests/effect.c
@@ -651,6 +651,9 @@ static void test_effect_variable_member(void)
     variable = variable2->lpVtbl->GetMemberBySemantic(variable2, "SV_POSITION");
     ok(variable == variable3, "GetMemberBySemantic got %p, expected %p\n", variable, variable3);
 
+    variable = variable2->lpVtbl->GetMemberBySemantic(variable2, "sv_POSITION");
+    ok(variable == variable3, "GetMemberBySemantic got %p, expected %p\n", variable, variable3);
+
     variable = variable2->lpVtbl->GetMemberByIndex(variable2, 0);
     ok(variable == variable3, "GetMemberByIndex got %p, expected %p\n", variable, variable3);
 
@@ -668,6 +671,9 @@ static void test_effect_variable_member(void)
     variable = variable2->lpVtbl->GetMemberBySemantic(variable2, "COLOR0");
     ok(variable == variable3, "GetMemberBySemantic got %p, expected %p\n", variable, variable3);
 
+    variable = variable2->lpVtbl->GetMemberBySemantic(variable2, "color0");
+    ok(variable == variable3, "GetMemberBySemantic got %p, expected %p\n", variable, variable3);
+
     variable = variable2->lpVtbl->GetMemberByIndex(variable2, 1);
     ok(variable == variable3, "GetMemberByIndex got %p, expected %p\n", variable, variable3);
 
-- 
2.33.0




More information about the wine-devel mailing list