From 20ab5e7d45b972cfd78763aa23f7aa80cc49639f Mon Sep 17 00:00:00 2001 From: Mohamad Al-Jaf Date: Tue, 22 Feb 2022 18:35:41 -0500 Subject: [PATCH] wusa: Use case insensitive comparison for expressions. 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 Signed-off-by: Hans Leidekker Signed-off-by: Alexandre Julliard --- 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 d1bb385cd06..de8387cd575 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);