[PATCH] wusa: Use case insensitive comparison for expressions.

Mohamad Al-Jaf mohamadaljaf at gmail.com
Thu Jan 20 22:19:30 CST 2022


Some update packages use both lowercase and uppercase names for
expressions.

For example, Microsoft-Windows-MediaFeaturePack-OOB-Package_x64.msu
uses both Runtime and runtime for expressions.

Signed-off-by: Mohamad Al-Jaf <mohamadaljaf at gmail.com>
---
 programs/wusa/main.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/programs/wusa/main.c b/programs/wusa/main.c
index bcb795a80fa..db745edbe5a 100644
--- a/programs/wusa/main.c
+++ b/programs/wusa/main.c
@@ -480,10 +480,10 @@ static WCHAR *lookup_expression(struct assembly_entry *assembly, const WCHAR *ke
 {
     WCHAR path[MAX_PATH];
 
-    if (!wcscmp(key, L"runtime.system32"))
+    if (!wcsicmp(key, L"runtime.system32"))
     {
 #ifdef __x86_64__
-        if (!wcscmp(assembly->identity.architecture, L"x86"))
+        if (!wcsicmp(assembly->identity.architecture, L"x86"))
         {
             GetSystemWow64DirectoryW(path, ARRAY_SIZE(path));
             return strdupW(path);
@@ -492,7 +492,7 @@ static WCHAR *lookup_expression(struct assembly_entry *assembly, const WCHAR *ke
         GetSystemDirectoryW(path, ARRAY_SIZE(path));
         return strdupW(path);
     }
-    if (!wcscmp(key, L"runtime.windows"))
+    if (!wcsicmp(key, L"runtime.windows"))
     {
         GetWindowsDirectoryW(path, ARRAY_SIZE(path));
         return strdupW(path);
-- 
2.34.1




More information about the wine-devel mailing list