[MSI] CORE-18707 hack. Allow MSI under ROS amd64 to continue when GetSystemWow64DirectoryW is called (#6887)

This commit is contained in:
Julen Urizar Compains 2024-06-04 13:10:09 +02:00 committed by GitHub
parent b631c5d3b1
commit 1cd08eee52
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -867,6 +867,17 @@ static UINT HANDLE_CustomType1( MSIPACKAGE *package, const WCHAR *source, const
if (!(binary = get_temp_binary(package, source)))
return ERROR_FUNCTION_FAILED;
#if defined(__REACTOS__) && defined(_M_AMD64)
{
DWORD arch;
get_binary_type(binary->tmpfile, &arch);
if (arch == SCS_32BIT_BINARY) {
ERR("%s is a 32 bit custom action. Returning as ERROR_SUCCESS\n", debugstr_w(source));
return ERROR_SUCCESS; // HACK: NO WOW64! return as executed though it's not true
}
}
#endif
TRACE("Calling function %s from %s\n", debugstr_w(target), debugstr_w(binary->tmpfile));
if (!(info = do_msidbCustomActionTypeDll( package, type, binary->tmpfile, target, action )))
@ -975,6 +986,17 @@ static UINT HANDLE_CustomType17( MSIPACKAGE *package, const WCHAR *source, const
return ERROR_FUNCTION_FAILED;
}
#if defined(__REACTOS__) && defined(_M_AMD64)
{
DWORD arch;
get_binary_type(file->TargetPath, &arch);
if (arch == SCS_32BIT_BINARY) {
ERR("%s is a 32 bit custom action. Returning as ERROR_SUCCESS\n", debugstr_w(source));
return ERROR_SUCCESS; // HACK: NO WOW64! return as executed though it's not true
}
}
#endif
if (!(info = do_msidbCustomActionTypeDll( package, type, file->TargetPath, target, action )))
return ERROR_FUNCTION_FAILED;
return wait_thread_handle( info );