Nikolay Sivov : d3d10/effect: Use case-insensitive comparison in GetMemberTypeBySemantic().

Alexandre Julliard julliard at winehq.org
Wed Sep 8 15:12:39 CDT 2021


Module: wine
Branch: master
Commit: af20f75f7c1b6a693b9b5d5480b52dd3926f2f57
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=af20f75f7c1b6a693b9b5d5480b52dd3926f2f57

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Fri Sep  3 12:30:04 2021 +0300

d3d10/effect: Use case-insensitive comparison in GetMemberTypeBySemantic().

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/d3d10/effect.c       | 2 +-
 dlls/d3d10/tests/effect.c | 8 +++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c
index 5efeb2901c0..5ade60537ef 100644
--- a/dlls/d3d10/effect.c
+++ b/dlls/d3d10/effect.c
@@ -8277,7 +8277,7 @@ static struct ID3D10EffectType * STDMETHODCALLTYPE d3d10_effect_type_GetMemberTy
     {
         struct d3d10_effect_type_member *typem = &This->members[i];
 
-        if (typem->semantic && !strcmp(typem->semantic, semantic))
+        if (typem->semantic && !stricmp(typem->semantic, semantic))
         {
             TRACE("Returning type %p.\n", typem->type);
             return &typem->type->ID3D10EffectType_iface;
diff --git a/dlls/d3d10/tests/effect.c b/dlls/d3d10/tests/effect.c
index a448ba83714..029d4271b14 100644
--- a/dlls/d3d10/tests/effect.c
+++ b/dlls/d3d10/tests/effect.c
@@ -390,11 +390,12 @@ static void test_effect_variable_type(void)
     ok(type_desc.UnpackedSize == 0x8, "UnpackedSize is %#x, expected 0x8\n", type_desc.UnpackedSize);
     ok(type_desc.Stride == 0x10, "Stride is %x, expected 0x10\n", type_desc.Stride);
 
-    for (i = 0; i < 3; ++i)
+    for (i = 0; i < 4; ++i)
     {
         if (i == 0) type3 = type2->lpVtbl->GetMemberTypeByIndex(type2, 0);
         else if (i == 1) type3 = type2->lpVtbl->GetMemberTypeByName(type2, "f3");
-        else type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "SV_POSITION");
+        else if (i == 2) type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "SV_POSITION");
+        else type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "sv_POSITION");
 
         hr = type3->lpVtbl->GetDesc(type3, &type_desc);
         ok(SUCCEEDED(hr), "GetDesc failed (%x)\n", hr);
@@ -413,7 +414,8 @@ static void test_effect_variable_type(void)
 
         if (i == 0) type3 = type2->lpVtbl->GetMemberTypeByIndex(type2, 1);
         else if (i == 1) type3 = type2->lpVtbl->GetMemberTypeByName(type2, "f4");
-        else type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "COLOR0");
+        else if (i == 2) type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "COLOR0");
+        else type3 = type2->lpVtbl->GetMemberTypeBySemantic(type2, "color0");
 
         hr = type3->lpVtbl->GetDesc(type3, &type_desc);
         ok(SUCCEEDED(hr), "GetDesc failed (%x)\n", hr);




More information about the wine-cvs mailing list