From 4d81da5229e5ed0bea46fd338dbc6f94308ffb34 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Wed, 10 Feb 2016 03:34:43 +0100 Subject: [PATCH] Rebase against 11be16ca799ac642fb636633392f4ec80e765da7. --- ...k-architecture-before-loading-module.patch | 8 +- ...l-Use-wrapper-functions-for-syscalls.patch | 168 +++++++++--------- patches/patchinstall.sh | 2 +- .../wined3d-CSMT_Main/9999-IfDefined.patch | 8 +- 4 files changed, 93 insertions(+), 93 deletions(-) diff --git a/patches/ntdll-Loader_Machine_Type/0001-ntdll-Check-architecture-before-loading-module.patch b/patches/ntdll-Loader_Machine_Type/0001-ntdll-Check-architecture-before-loading-module.patch index 9635e456..ff66cce1 100644 --- a/patches/ntdll-Loader_Machine_Type/0001-ntdll-Check-architecture-before-loading-module.patch +++ b/patches/ntdll-Loader_Machine_Type/0001-ntdll-Check-architecture-before-loading-module.patch @@ -1,4 +1,4 @@ -From a01523c116eb0fa430e618683bea55f1e3b6b0d5 Mon Sep 17 00:00:00 2001 +From 9f96f35a269a9d1c905f6334e64021a76bc7dc60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 18 Jul 2015 04:52:55 +0200 Subject: ntdll: Check architecture before loading module. @@ -8,7 +8,7 @@ Subject: ntdll: Check architecture before loading module. 1 file changed, 131 insertions(+), 8 deletions(-) diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c -index 74feb97..ee1e5e2 100644 +index bf1d365..86c88ef 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c @@ -2078,6 +2078,108 @@ done: @@ -153,7 +153,7 @@ index 74feb97..ee1e5e2 100644 @@ -2150,7 +2256,23 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, attr.SecurityDescriptor = NULL; attr.SecurityQualityOfService = NULL; - if (NtOpenFile( handle, GENERIC_READ, &attr, &io, FILE_SHARE_READ|FILE_SHARE_DELETE, FILE_SYNCHRONOUS_IO_NONALERT|FILE_NON_DIRECTORY_FILE )) *handle = 0; + if (NtOpenFile( handle, GENERIC_READ|SYNCHRONIZE, &attr, &io, FILE_SHARE_READ|FILE_SHARE_DELETE, FILE_SYNCHRONOUS_IO_NONALERT|FILE_NON_DIRECTORY_FILE )) *handle = 0; - goto found; + #ifdef CURRENT_ARCH + if (*handle && check_arch) @@ -202,5 +202,5 @@ index 74feb97..ee1e5e2 100644 if (status != STATUS_BUFFER_TOO_SMALL) break; /* grow the buffer and retry */ -- -2.6.2 +2.7.0 diff --git a/patches/ntdll-Syscall_Wrappers/0002-ntdll-Use-wrapper-functions-for-syscalls.patch b/patches/ntdll-Syscall_Wrappers/0002-ntdll-Use-wrapper-functions-for-syscalls.patch index 24218ec4..cb07f27c 100644 --- a/patches/ntdll-Syscall_Wrappers/0002-ntdll-Use-wrapper-functions-for-syscalls.patch +++ b/patches/ntdll-Syscall_Wrappers/0002-ntdll-Use-wrapper-functions-for-syscalls.patch @@ -1,4 +1,4 @@ -From 2ea2d12561993dba7a8b042bdac894c9967d0c85 Mon Sep 17 00:00:00 2001 +From d4288090dcc57211aaab4c913ab9280d7cf1c8a9 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Fri, 16 Oct 2015 02:32:58 +0200 Subject: ntdll: Use wrapper functions for syscalls. @@ -81,7 +81,7 @@ index 304b7f6..222fde9 100644 { NTSTATUS status; diff --git a/dlls/ntdll/directory.c b/dlls/ntdll/directory.c -index 04c8e26..e4b7069 100644 +index 93fe594..735683f 100644 --- a/dlls/ntdll/directory.c +++ b/dlls/ntdll/directory.c @@ -2210,7 +2210,8 @@ done: @@ -141,7 +141,7 @@ index 5c42010..12b2995 100644 HARDERROR_RESPONSE_OPTION ResponseOption, PHARDERROR_RESPONSE Response ) { diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c -index 43b74b2..2e24079 100644 +index 3883e5a..a17151d 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c @@ -296,7 +296,8 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT @@ -354,7 +354,7 @@ index 43b74b2..2e24079 100644 POBJECT_ATTRIBUTES attr, PIO_STATUS_BLOCK iosb, ULONG sharing, ULONG dispo, ULONG options, ULONG pipe_type, ULONG read_mode, -@@ -3547,7 +3568,8 @@ NTSTATUS WINAPI NtCreateNamedPipeFile( PHANDLE handle, ULONG access, +@@ -3549,7 +3570,8 @@ NTSTATUS WINAPI NtCreateNamedPipeFile( PHANDLE handle, ULONG access, * * */ @@ -364,7 +364,7 @@ index 43b74b2..2e24079 100644 { NTSTATUS status; HANDLE hFile; -@@ -3567,7 +3589,8 @@ NTSTATUS WINAPI NtDeleteFile( POBJECT_ATTRIBUTES ObjectAttributes ) +@@ -3569,7 +3591,8 @@ NTSTATUS WINAPI NtDeleteFile( POBJECT_ATTRIBUTES ObjectAttributes ) * * */ @@ -374,7 +374,7 @@ index 43b74b2..2e24079 100644 { TRACE("%p %p %p\n", hFile, iosb, io_status ); -@@ -3588,7 +3611,8 @@ NTSTATUS WINAPI NtCancelIoFileEx( HANDLE hFile, PIO_STATUS_BLOCK iosb, PIO_STATU +@@ -3590,7 +3613,8 @@ NTSTATUS WINAPI NtCancelIoFileEx( HANDLE hFile, PIO_STATUS_BLOCK iosb, PIO_STATU * * */ @@ -384,7 +384,7 @@ index 43b74b2..2e24079 100644 { TRACE("%p %p\n", hFile, io_status ); -@@ -3621,7 +3645,8 @@ NTSTATUS WINAPI NtCancelIoFile( HANDLE hFile, PIO_STATUS_BLOCK io_status ) +@@ -3623,7 +3647,8 @@ NTSTATUS WINAPI NtCancelIoFile( HANDLE hFile, PIO_STATUS_BLOCK io_status ) * RETURNS * An NT status code */ @@ -395,7 +395,7 @@ index 43b74b2..2e24079 100644 ULONG CreateOptions, ULONG MailslotQuota, ULONG MaxMessageSize, PLARGE_INTEGER TimeOut) diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c -index 5bcc03e..b08feeb 100644 +index bf1d365..423cca9 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c @@ -3200,7 +3200,8 @@ PVOID WINAPI RtlPcToFileHeader( PVOID pc, PVOID *address ) @@ -419,7 +419,7 @@ index 5bcc03e..b08feeb 100644 FIXME("(%p), stub!\n",DriverServiceName); return STATUS_NOT_IMPLEMENTED; diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c -index 9b750e4..9b54be6 100644 +index 5c8b7fd..c857072 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -74,7 +74,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(ntdll); @@ -761,7 +761,7 @@ index 5e4c39e..d0ed679 100644 #define HASH_STRING_ALGORITHM_X65599 1 #define HASH_STRING_ALGORITHM_INVALID 0xffffffff diff --git a/dlls/ntdll/om.c b/dlls/ntdll/om.c -index 7aa2fea..5d28684 100644 +index 1279f2b..75653bf 100644 --- a/dlls/ntdll/om.c +++ b/dlls/ntdll/om.c @@ -50,7 +50,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(ntdll); @@ -896,10 +896,10 @@ index 7aa2fea..5d28684 100644 FIXME("(%p), stub.\n", Handle); return STATUS_SUCCESS; diff --git a/dlls/ntdll/process.c b/dlls/ntdll/process.c -index 5a5c3ef..c7a0a8a 100644 +index a93b8fb..231d305 100644 --- a/dlls/ntdll/process.c +++ b/dlls/ntdll/process.c -@@ -53,7 +53,8 @@ static ULONG execute_flags = MEM_EXECUTE_OPTION_DISABLE; +@@ -57,7 +57,8 @@ static ULONG execute_flags = MEM_EXECUTE_OPTION_DISABLE; * * Native applications must kill themselves when done */ @@ -909,7 +909,7 @@ index 5a5c3ef..c7a0a8a 100644 { NTSTATUS ret; BOOL self; -@@ -115,7 +116,8 @@ ULONG_PTR get_system_affinity_mask(void) +@@ -145,7 +146,8 @@ static void fill_VM_COUNTERS(VM_COUNTERS* pvmi) * ZwQueryInformationProcess [NTDLL.@] * */ @@ -919,7 +919,7 @@ index 5a5c3ef..c7a0a8a 100644 IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, OUT PVOID ProcessInformation, -@@ -485,7 +487,8 @@ NTSTATUS WINAPI NtQueryInformationProcess( +@@ -515,7 +517,8 @@ NTSTATUS WINAPI NtQueryInformationProcess( * NtSetInformationProcess [NTDLL.@] * ZwSetInformationProcess [NTDLL.@] */ @@ -929,7 +929,7 @@ index 5a5c3ef..c7a0a8a 100644 IN HANDLE ProcessHandle, IN PROCESSINFOCLASS ProcessInformationClass, IN PVOID ProcessInformation, -@@ -575,7 +578,8 @@ NTSTATUS WINAPI NtSetInformationProcess( +@@ -605,7 +608,8 @@ NTSTATUS WINAPI NtSetInformationProcess( * NtFlushInstructionCache [NTDLL.@] * ZwFlushInstructionCache [NTDLL.@] */ @@ -939,7 +939,7 @@ index 5a5c3ef..c7a0a8a 100644 IN HANDLE ProcessHandle, IN LPCVOID BaseAddress, IN SIZE_T Size) -@@ -596,7 +600,8 @@ NTSTATUS WINAPI NtFlushInstructionCache( +@@ -626,7 +630,8 @@ NTSTATUS WINAPI NtFlushInstructionCache( * NtOpenProcess [NTDLL.@] * ZwOpenProcess [NTDLL.@] */ @@ -950,7 +950,7 @@ index 5a5c3ef..c7a0a8a 100644 { NTSTATUS status; diff --git a/dlls/ntdll/reg.c b/dlls/ntdll/reg.c -index bf786f4..2d17af6 100644 +index 8af2181..8a7e77c 100644 --- a/dlls/ntdll/reg.c +++ b/dlls/ntdll/reg.c @@ -49,7 +49,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(reg); @@ -983,7 +983,7 @@ index bf786f4..2d17af6 100644 { FIXME( "(%p %s)\n", handle, debugstr_us(name) ); return STATUS_NOT_IMPLEMENTED; -@@ -124,7 +127,8 @@ NTSTATUS WINAPI RtlpNtCreateKey( PHANDLE retkey, ACCESS_MASK access, const OBJEC +@@ -150,7 +153,8 @@ static NTSTATUS open_key( PHANDLE retkey, ACCESS_MASK access, const OBJECT_ATTRI * NtOpenKeyEx [NTDLL.@] * ZwOpenKeyEx [NTDLL.@] */ @@ -991,9 +991,9 @@ index bf786f4..2d17af6 100644 +DEFINE_SYSCALL_ENTRYPOINT( NtOpenKeyEx, 4 ); +NTSTATUS WINAPI SYSCALL(NtOpenKeyEx)( PHANDLE retkey, ACCESS_MASK access, const OBJECT_ATTRIBUTES *attr, ULONG options ) { - NTSTATUS ret; - -@@ -159,19 +163,22 @@ NTSTATUS WINAPI NtOpenKeyEx( PHANDLE retkey, ACCESS_MASK access, const OBJECT_AT + return open_key( retkey, access, attr, options ); + } +@@ -163,19 +167,22 @@ NTSTATUS WINAPI NtOpenKeyEx( PHANDLE retkey, ACCESS_MASK access, const OBJECT_AT * IN ACCESS_MASK access * IN POBJECT_ATTRIBUTES attr */ @@ -1001,7 +1001,7 @@ index bf786f4..2d17af6 100644 +DEFINE_SYSCALL_ENTRYPOINT( NtOpenKey, 3 ); +NTSTATUS WINAPI SYSCALL(NtOpenKey)( PHANDLE retkey, ACCESS_MASK access, const OBJECT_ATTRIBUTES *attr ) { - return NtOpenKeyEx( retkey, access, attr, 0 ); + return open_key( retkey, access, attr, 0 ); } -NTSTATUS WINAPI NtOpenKeyTransactedEx( PHANDLE retkey, ACCESS_MASK access, const OBJECT_ATTRIBUTES *attr, @@ -1019,7 +1019,7 @@ index bf786f4..2d17af6 100644 HANDLE transaction ) { return NtOpenKeyTransactedEx( retkey, access, attr, 0, transaction ); -@@ -193,7 +200,8 @@ NTSTATUS WINAPI RtlpNtOpenKey( PHANDLE retkey, ACCESS_MASK access, OBJECT_ATTRIB +@@ -197,7 +204,8 @@ NTSTATUS WINAPI RtlpNtOpenKey( PHANDLE retkey, ACCESS_MASK access, OBJECT_ATTRIB * NtDeleteKey [NTDLL.@] * ZwDeleteKey [NTDLL.@] */ @@ -1029,7 +1029,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; -@@ -222,7 +230,8 @@ NTSTATUS WINAPI RtlpNtMakeTemporaryKey( HANDLE hkey ) +@@ -226,7 +234,8 @@ NTSTATUS WINAPI RtlpNtMakeTemporaryKey( HANDLE hkey ) * NtDeleteValueKey [NTDLL.@] * ZwDeleteValueKey [NTDLL.@] */ @@ -1039,7 +1039,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; -@@ -366,7 +375,8 @@ static NTSTATUS enumerate_key( HANDLE handle, int index, KEY_INFORMATION_CLASS i +@@ -370,7 +379,8 @@ static NTSTATUS enumerate_key( HANDLE handle, int index, KEY_INFORMATION_CLASS i * NOTES * the name copied into the buffer is NOT 0-terminated */ @@ -1049,7 +1049,7 @@ index bf786f4..2d17af6 100644 void *info, DWORD length, DWORD *result_len ) { /* -1 means query key, so avoid it here */ -@@ -425,7 +435,8 @@ NTSTATUS WINAPI RtlpNtEnumerateSubKey( HANDLE handle, UNICODE_STRING *out, ULONG +@@ -429,7 +439,8 @@ NTSTATUS WINAPI RtlpNtEnumerateSubKey( HANDLE handle, UNICODE_STRING *out, ULONG * NtQueryKey [NTDLL.@] * ZwQueryKey [NTDLL.@] */ @@ -1059,7 +1059,7 @@ index bf786f4..2d17af6 100644 void *info, DWORD length, DWORD *result_len ) { return enumerate_key( handle, -1, info_class, info, length, result_len ); -@@ -480,7 +491,8 @@ static void copy_key_value_info( KEY_VALUE_INFORMATION_CLASS info_class, void *i +@@ -484,7 +495,8 @@ static void copy_key_value_info( KEY_VALUE_INFORMATION_CLASS info_class, void *i * NtEnumerateValueKey [NTDLL.@] * ZwEnumerateValueKey [NTDLL.@] */ @@ -1069,7 +1069,7 @@ index bf786f4..2d17af6 100644 KEY_VALUE_INFORMATION_CLASS info_class, void *info, DWORD length, DWORD *result_len ) { -@@ -528,7 +540,8 @@ NTSTATUS WINAPI NtEnumerateValueKey( HANDLE handle, ULONG index, +@@ -532,7 +544,8 @@ NTSTATUS WINAPI NtEnumerateValueKey( HANDLE handle, ULONG index, * NOTES * the name in the KeyValueInformation is never set */ @@ -1079,7 +1079,7 @@ index bf786f4..2d17af6 100644 KEY_VALUE_INFORMATION_CLASS info_class, void *info, DWORD length, DWORD *result_len ) { -@@ -630,7 +643,8 @@ NTSTATUS WINAPI RtlpNtQueryValueKey( HANDLE handle, ULONG *result_type, PBYTE de +@@ -634,7 +647,8 @@ NTSTATUS WINAPI RtlpNtQueryValueKey( HANDLE handle, ULONG *result_type, PBYTE de * NtFlushKey [NTDLL.@] * ZwFlushKey [NTDLL.@] */ @@ -1089,7 +1089,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; -@@ -650,7 +664,8 @@ NTSTATUS WINAPI NtFlushKey(HANDLE key) +@@ -654,7 +668,8 @@ NTSTATUS WINAPI NtFlushKey(HANDLE key) * NtLoadKey [NTDLL.@] * ZwLoadKey [NTDLL.@] */ @@ -1099,7 +1099,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; HANDLE hive; -@@ -683,7 +698,8 @@ NTSTATUS WINAPI NtLoadKey( const OBJECT_ATTRIBUTES *attr, OBJECT_ATTRIBUTES *fil +@@ -687,7 +702,8 @@ NTSTATUS WINAPI NtLoadKey( const OBJECT_ATTRIBUTES *attr, OBJECT_ATTRIBUTES *fil * NtNotifyChangeMultipleKeys [NTDLL.@] * ZwNotifyChangeMultipleKeys [NTDLL.@] */ @@ -1109,7 +1109,7 @@ index bf786f4..2d17af6 100644 HANDLE KeyHandle, ULONG Count, OBJECT_ATTRIBUTES *SubordinateObjects, -@@ -739,7 +755,8 @@ NTSTATUS WINAPI NtNotifyChangeMultipleKeys( +@@ -743,7 +759,8 @@ NTSTATUS WINAPI NtNotifyChangeMultipleKeys( * NtNotifyChangeKey [NTDLL.@] * ZwNotifyChangeKey [NTDLL.@] */ @@ -1119,7 +1119,7 @@ index bf786f4..2d17af6 100644 IN HANDLE KeyHandle, IN HANDLE Event, IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, -@@ -761,7 +778,8 @@ NTSTATUS WINAPI NtNotifyChangeKey( +@@ -765,7 +782,8 @@ NTSTATUS WINAPI NtNotifyChangeKey( * ZwQueryMultipleValueKey */ @@ -1129,7 +1129,7 @@ index bf786f4..2d17af6 100644 HANDLE KeyHandle, PKEY_MULTIPLE_VALUE_INFORMATION ListOfValuesToQuery, ULONG NumberOfItems, -@@ -779,7 +797,8 @@ NTSTATUS WINAPI NtQueryMultipleValueKey( +@@ -783,7 +801,8 @@ NTSTATUS WINAPI NtQueryMultipleValueKey( * NtReplaceKey [NTDLL.@] * ZwReplaceKey [NTDLL.@] */ @@ -1139,7 +1139,7 @@ index bf786f4..2d17af6 100644 IN POBJECT_ATTRIBUTES ObjectAttributes, IN HANDLE Key, IN POBJECT_ATTRIBUTES ReplacedObjectAttributes) -@@ -792,7 +811,8 @@ NTSTATUS WINAPI NtReplaceKey( +@@ -796,7 +815,8 @@ NTSTATUS WINAPI NtReplaceKey( * NtRestoreKey [NTDLL.@] * ZwRestoreKey [NTDLL.@] */ @@ -1149,7 +1149,7 @@ index bf786f4..2d17af6 100644 HANDLE KeyHandle, HANDLE FileHandle, ULONG RestoreFlags) -@@ -805,7 +825,8 @@ NTSTATUS WINAPI NtRestoreKey( +@@ -809,7 +829,8 @@ NTSTATUS WINAPI NtRestoreKey( * NtSaveKey [NTDLL.@] * ZwSaveKey [NTDLL.@] */ @@ -1159,7 +1159,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; -@@ -825,7 +846,8 @@ NTSTATUS WINAPI NtSaveKey(IN HANDLE KeyHandle, IN HANDLE FileHandle) +@@ -829,7 +850,8 @@ NTSTATUS WINAPI NtSaveKey(IN HANDLE KeyHandle, IN HANDLE FileHandle) * NtSetInformationKey [NTDLL.@] * ZwSetInformationKey [NTDLL.@] */ @@ -1169,7 +1169,7 @@ index bf786f4..2d17af6 100644 IN HANDLE KeyHandle, IN const int KeyInformationClass, IN PVOID KeyInformation, -@@ -845,7 +867,8 @@ NTSTATUS WINAPI NtSetInformationKey( +@@ -849,7 +871,8 @@ NTSTATUS WINAPI NtSetInformationKey( * win95 does not care about count for REG_SZ and finds out the len by itself (js) * NT does definitely care (aj) */ @@ -1179,7 +1179,7 @@ index bf786f4..2d17af6 100644 ULONG type, const void *data, ULONG count ) { NTSTATUS ret; -@@ -884,7 +907,8 @@ NTSTATUS WINAPI RtlpNtSetValueKey( HANDLE hkey, ULONG type, const void *data, +@@ -888,7 +911,8 @@ NTSTATUS WINAPI RtlpNtSetValueKey( HANDLE hkey, ULONG type, const void *data, * NtUnloadKey [NTDLL.@] * ZwUnloadKey [NTDLL.@] */ @@ -1189,7 +1189,7 @@ index bf786f4..2d17af6 100644 { NTSTATUS ret; -@@ -1491,7 +1515,8 @@ NTSTATUS WINAPI RtlWriteRegistryValue( ULONG RelativeTo, PCWSTR path, PCWSTR nam +@@ -1495,7 +1519,8 @@ NTSTATUS WINAPI RtlWriteRegistryValue( ULONG RelativeTo, PCWSTR path, PCWSTR nam * unless there is some app which explicitly depends on that, there is * no good reason to reproduce that. */ @@ -1381,10 +1381,10 @@ index 0c64541..ad00eb6 100644 NTSTATUS status = raise_exception( rec, context, first_chance ); if (status == STATUS_SUCCESS) NtSetContextThread( GetCurrentThread(), context ); diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c -index aa58442..45bac3e 100644 +index e87e672..2b3d550 100644 --- a/dlls/ntdll/sync.c +++ b/dlls/ntdll/sync.c -@@ -171,7 +171,8 @@ NTSTATUS validate_open_object_attributes( const OBJECT_ATTRIBUTES *attr ) +@@ -173,7 +173,8 @@ NTSTATUS validate_open_object_attributes( const OBJECT_ATTRIBUTES *attr ) /****************************************************************************** * NtCreateSemaphore (NTDLL.@) */ @@ -1394,7 +1394,7 @@ index aa58442..45bac3e 100644 IN ACCESS_MASK access, IN const OBJECT_ATTRIBUTES *attr OPTIONAL, IN LONG InitialCount, -@@ -204,7 +205,8 @@ NTSTATUS WINAPI NtCreateSemaphore( OUT PHANDLE SemaphoreHandle, +@@ -206,7 +207,8 @@ NTSTATUS WINAPI NtCreateSemaphore( OUT PHANDLE SemaphoreHandle, /****************************************************************************** * NtOpenSemaphore (NTDLL.@) */ @@ -1404,7 +1404,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -227,7 +229,8 @@ NTSTATUS WINAPI NtOpenSemaphore( HANDLE *handle, ACCESS_MASK access, const OBJEC +@@ -229,7 +231,8 @@ NTSTATUS WINAPI NtOpenSemaphore( HANDLE *handle, ACCESS_MASK access, const OBJEC /****************************************************************************** * NtQuerySemaphore (NTDLL.@) */ @@ -1414,7 +1414,7 @@ index aa58442..45bac3e 100644 void *info, ULONG len, ULONG *ret_len ) { NTSTATUS ret; -@@ -259,7 +262,8 @@ NTSTATUS WINAPI NtQuerySemaphore( HANDLE handle, SEMAPHORE_INFORMATION_CLASS cla +@@ -261,7 +264,8 @@ NTSTATUS WINAPI NtQuerySemaphore( HANDLE handle, SEMAPHORE_INFORMATION_CLASS cla /****************************************************************************** * NtReleaseSemaphore (NTDLL.@) */ @@ -1424,7 +1424,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; SERVER_START_REQ( release_semaphore ) -@@ -283,7 +287,8 @@ NTSTATUS WINAPI NtReleaseSemaphore( HANDLE handle, ULONG count, PULONG previous +@@ -285,7 +289,8 @@ NTSTATUS WINAPI NtReleaseSemaphore( HANDLE handle, ULONG count, PULONG previous * NtCreateEvent (NTDLL.@) * ZwCreateEvent (NTDLL.@) */ @@ -1434,7 +1434,7 @@ index aa58442..45bac3e 100644 const OBJECT_ATTRIBUTES *attr, EVENT_TYPE type, BOOLEAN InitialState) { NTSTATUS ret; -@@ -311,7 +316,8 @@ NTSTATUS WINAPI NtCreateEvent( PHANDLE EventHandle, ACCESS_MASK DesiredAccess, +@@ -313,7 +318,8 @@ NTSTATUS WINAPI NtCreateEvent( PHANDLE EventHandle, ACCESS_MASK DesiredAccess, * NtOpenEvent (NTDLL.@) * ZwOpenEvent (NTDLL.@) */ @@ -1444,7 +1444,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -336,7 +342,8 @@ NTSTATUS WINAPI NtOpenEvent( HANDLE *handle, ACCESS_MASK access, const OBJECT_AT +@@ -338,7 +344,8 @@ NTSTATUS WINAPI NtOpenEvent( HANDLE *handle, ACCESS_MASK access, const OBJECT_AT * NtSetEvent (NTDLL.@) * ZwSetEvent (NTDLL.@) */ @@ -1454,7 +1454,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -355,7 +362,8 @@ NTSTATUS WINAPI NtSetEvent( HANDLE handle, PULONG NumberOfThreadsReleased ) +@@ -357,7 +364,8 @@ NTSTATUS WINAPI NtSetEvent( HANDLE handle, PULONG NumberOfThreadsReleased ) /****************************************************************************** * NtResetEvent (NTDLL.@) */ @@ -1464,7 +1464,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -378,7 +386,8 @@ NTSTATUS WINAPI NtResetEvent( HANDLE handle, PULONG NumberOfThreadsReleased ) +@@ -380,7 +388,8 @@ NTSTATUS WINAPI NtResetEvent( HANDLE handle, PULONG NumberOfThreadsReleased ) * FIXME * same as NtResetEvent ??? */ @@ -1474,7 +1474,7 @@ index aa58442..45bac3e 100644 { return NtResetEvent( handle, NULL ); } -@@ -389,7 +398,8 @@ NTSTATUS WINAPI NtClearEvent ( HANDLE handle ) +@@ -391,7 +400,8 @@ NTSTATUS WINAPI NtClearEvent ( HANDLE handle ) * FIXME * PulseCount */ @@ -1484,7 +1484,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -409,7 +419,8 @@ NTSTATUS WINAPI NtPulseEvent( HANDLE handle, PULONG PulseCount ) +@@ -411,7 +421,8 @@ NTSTATUS WINAPI NtPulseEvent( HANDLE handle, PULONG PulseCount ) /****************************************************************************** * NtQueryEvent (NTDLL.@) */ @@ -1494,7 +1494,7 @@ index aa58442..45bac3e 100644 void *info, ULONG len, ULONG *ret_len ) { NTSTATUS ret; -@@ -447,7 +458,8 @@ NTSTATUS WINAPI NtQueryEvent( HANDLE handle, EVENT_INFORMATION_CLASS class, +@@ -449,7 +460,8 @@ NTSTATUS WINAPI NtQueryEvent( HANDLE handle, EVENT_INFORMATION_CLASS class, * NtCreateMutant [NTDLL.@] * ZwCreateMutant [NTDLL.@] */ @@ -1504,7 +1504,7 @@ index aa58442..45bac3e 100644 IN ACCESS_MASK access, IN const OBJECT_ATTRIBUTES* attr OPTIONAL, IN BOOLEAN InitialOwner) -@@ -476,7 +488,8 @@ NTSTATUS WINAPI NtCreateMutant(OUT HANDLE* MutantHandle, +@@ -478,7 +490,8 @@ NTSTATUS WINAPI NtCreateMutant(OUT HANDLE* MutantHandle, * NtOpenMutant [NTDLL.@] * ZwOpenMutant [NTDLL.@] */ @@ -1514,7 +1514,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -500,7 +513,8 @@ NTSTATUS WINAPI NtOpenMutant( HANDLE *handle, ACCESS_MASK access, const OBJECT_A +@@ -502,7 +515,8 @@ NTSTATUS WINAPI NtOpenMutant( HANDLE *handle, ACCESS_MASK access, const OBJECT_A * NtReleaseMutant [NTDLL.@] * ZwReleaseMutant [NTDLL.@] */ @@ -1524,7 +1524,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -518,7 +532,8 @@ NTSTATUS WINAPI NtReleaseMutant( IN HANDLE handle, OUT PLONG prev_count OPTIONAL +@@ -520,7 +534,8 @@ NTSTATUS WINAPI NtReleaseMutant( IN HANDLE handle, OUT PLONG prev_count OPTIONAL * NtQueryMutant [NTDLL.@] * ZwQueryMutant [NTDLL.@] */ @@ -1534,7 +1534,7 @@ index aa58442..45bac3e 100644 IN MUTANT_INFORMATION_CLASS MutantInformationClass, OUT PVOID MutantInformation, IN ULONG MutantInformationLength, -@@ -537,7 +552,8 @@ NTSTATUS WINAPI NtQueryMutant(IN HANDLE handle, +@@ -539,7 +554,8 @@ NTSTATUS WINAPI NtQueryMutant(IN HANDLE handle, * NtCreateJobObject [NTDLL.@] * ZwCreateJobObject [NTDLL.@] */ @@ -1544,7 +1544,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; data_size_t len; -@@ -562,7 +578,8 @@ NTSTATUS WINAPI NtCreateJobObject( PHANDLE handle, ACCESS_MASK access, const OBJ +@@ -564,7 +580,8 @@ NTSTATUS WINAPI NtCreateJobObject( PHANDLE handle, ACCESS_MASK access, const OBJ * NtOpenJobObject [NTDLL.@] * ZwOpenJobObject [NTDLL.@] */ @@ -1554,7 +1554,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -586,7 +603,8 @@ NTSTATUS WINAPI NtOpenJobObject( HANDLE *handle, ACCESS_MASK access, const OBJEC +@@ -588,7 +605,8 @@ NTSTATUS WINAPI NtOpenJobObject( HANDLE *handle, ACCESS_MASK access, const OBJEC * NtTerminateJobObject [NTDLL.@] * ZwTerminateJobObject [NTDLL.@] */ @@ -1564,7 +1564,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -607,7 +625,8 @@ NTSTATUS WINAPI NtTerminateJobObject( HANDLE handle, NTSTATUS status ) +@@ -609,7 +627,8 @@ NTSTATUS WINAPI NtTerminateJobObject( HANDLE handle, NTSTATUS status ) * NtQueryInformationJobObject [NTDLL.@] * ZwQueryInformationJobObject [NTDLL.@] */ @@ -1574,7 +1574,7 @@ index aa58442..45bac3e 100644 ULONG len, PULONG ret_len ) { FIXME( "stub: %p %u %p %u %p\n", handle, class, info, len, ret_len ); -@@ -650,7 +669,8 @@ NTSTATUS WINAPI NtQueryInformationJobObject( HANDLE handle, JOBOBJECTINFOCLASS c +@@ -652,7 +671,8 @@ NTSTATUS WINAPI NtQueryInformationJobObject( HANDLE handle, JOBOBJECTINFOCLASS c * NtSetInformationJobObject [NTDLL.@] * ZwSetInformationJobObject [NTDLL.@] */ @@ -1584,7 +1584,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status = STATUS_NOT_IMPLEMENTED; JOBOBJECT_BASIC_LIMIT_INFORMATION *basic_limit; -@@ -715,7 +735,8 @@ NTSTATUS WINAPI NtSetInformationJobObject( HANDLE handle, JOBOBJECTINFOCLASS cla +@@ -717,7 +737,8 @@ NTSTATUS WINAPI NtSetInformationJobObject( HANDLE handle, JOBOBJECTINFOCLASS cla * NtIsProcessInJob [NTDLL.@] * ZwIsProcessInJob [NTDLL.@] */ @@ -1594,7 +1594,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -736,7 +757,8 @@ NTSTATUS WINAPI NtIsProcessInJob( HANDLE process, HANDLE job ) +@@ -738,7 +759,8 @@ NTSTATUS WINAPI NtIsProcessInJob( HANDLE process, HANDLE job ) * NtAssignProcessToJobObject [NTDLL.@] * ZwAssignProcessToJobObject [NTDLL.@] */ @@ -1604,7 +1604,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -761,7 +783,8 @@ NTSTATUS WINAPI NtAssignProcessToJobObject( HANDLE job, HANDLE process ) +@@ -763,7 +785,8 @@ NTSTATUS WINAPI NtAssignProcessToJobObject( HANDLE job, HANDLE process ) * NtCreateTimer [NTDLL.@] * ZwCreateTimer [NTDLL.@] */ @@ -1614,7 +1614,7 @@ index aa58442..45bac3e 100644 IN ACCESS_MASK access, IN const OBJECT_ATTRIBUTES *attr OPTIONAL, IN TIMER_TYPE timer_type) -@@ -794,7 +817,8 @@ NTSTATUS WINAPI NtCreateTimer(OUT HANDLE *handle, +@@ -796,7 +819,8 @@ NTSTATUS WINAPI NtCreateTimer(OUT HANDLE *handle, * NtOpenTimer [NTDLL.@] * ZwOpenTimer [NTDLL.@] */ @@ -1624,7 +1624,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -818,7 +842,8 @@ NTSTATUS WINAPI NtOpenTimer( HANDLE *handle, ACCESS_MASK access, const OBJECT_AT +@@ -820,7 +844,8 @@ NTSTATUS WINAPI NtOpenTimer( HANDLE *handle, ACCESS_MASK access, const OBJECT_AT * NtSetTimer [NTDLL.@] * ZwSetTimer [NTDLL.@] */ @@ -1634,7 +1634,7 @@ index aa58442..45bac3e 100644 IN const LARGE_INTEGER* when, IN PTIMER_APC_ROUTINE callback, IN PVOID callback_arg, -@@ -852,7 +877,8 @@ NTSTATUS WINAPI NtSetTimer(IN HANDLE handle, +@@ -854,7 +879,8 @@ NTSTATUS WINAPI NtSetTimer(IN HANDLE handle, * NtCancelTimer [NTDLL.@] * ZwCancelTimer [NTDLL.@] */ @@ -1644,7 +1644,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -886,7 +912,8 @@ NTSTATUS WINAPI NtCancelTimer(IN HANDLE handle, OUT BOOLEAN* state) +@@ -888,7 +914,8 @@ NTSTATUS WINAPI NtCancelTimer(IN HANDLE handle, OUT BOOLEAN* state) * STATUS_ACCESS_DENIED, if TimerHandle does not have TIMER_QUERY_STATE access * to the timer. */ @@ -1654,7 +1654,7 @@ index aa58442..45bac3e 100644 HANDLE TimerHandle, TIMER_INFORMATION_CLASS TimerInformationClass, PVOID TimerInformation, -@@ -937,7 +964,8 @@ NTSTATUS WINAPI NtQueryTimer( +@@ -939,7 +966,8 @@ NTSTATUS WINAPI NtQueryTimer( /****************************************************************************** * NtQueryTimerResolution [NTDLL.@] */ @@ -1664,7 +1664,7 @@ index aa58442..45bac3e 100644 OUT ULONG* max_resolution, OUT ULONG* current_resolution) { -@@ -950,7 +978,8 @@ NTSTATUS WINAPI NtQueryTimerResolution(OUT ULONG* min_resolution, +@@ -952,7 +980,8 @@ NTSTATUS WINAPI NtQueryTimerResolution(OUT ULONG* min_resolution, /****************************************************************************** * NtSetTimerResolution [NTDLL.@] */ @@ -1674,7 +1674,7 @@ index aa58442..45bac3e 100644 IN BOOLEAN set_resolution, OUT ULONG* current_resolution ) { -@@ -983,7 +1012,8 @@ static NTSTATUS wait_objects( DWORD count, const HANDLE *handles, +@@ -985,7 +1014,8 @@ static NTSTATUS wait_objects( DWORD count, const HANDLE *handles, /****************************************************************** * NtWaitForMultipleObjects (NTDLL.@) */ @@ -1684,7 +1684,7 @@ index aa58442..45bac3e 100644 BOOLEAN wait_any, BOOLEAN alertable, const LARGE_INTEGER *timeout ) { -@@ -994,7 +1024,8 @@ NTSTATUS WINAPI NtWaitForMultipleObjects( DWORD count, const HANDLE *handles, +@@ -996,7 +1026,8 @@ NTSTATUS WINAPI NtWaitForMultipleObjects( DWORD count, const HANDLE *handles, /****************************************************************** * NtWaitForSingleObject (NTDLL.@) */ @@ -1694,7 +1694,7 @@ index aa58442..45bac3e 100644 { return wait_objects( 1, &handle, FALSE, alertable, timeout ); } -@@ -1003,7 +1034,8 @@ NTSTATUS WINAPI NtWaitForSingleObject(HANDLE handle, BOOLEAN alertable, const LA +@@ -1005,7 +1036,8 @@ NTSTATUS WINAPI NtWaitForSingleObject(HANDLE handle, BOOLEAN alertable, const LA /****************************************************************** * NtSignalAndWaitForSingleObject (NTDLL.@) */ @@ -1704,7 +1704,7 @@ index aa58442..45bac3e 100644 BOOLEAN alertable, const LARGE_INTEGER *timeout ) { select_op_t select_op; -@@ -1022,7 +1054,8 @@ NTSTATUS WINAPI NtSignalAndWaitForSingleObject( HANDLE hSignalObject, HANDLE hWa +@@ -1024,7 +1056,8 @@ NTSTATUS WINAPI NtSignalAndWaitForSingleObject( HANDLE hSignalObject, HANDLE hWa /****************************************************************** * NtYieldExecution (NTDLL.@) */ @@ -1714,7 +1714,7 @@ index aa58442..45bac3e 100644 { #ifdef HAVE_SCHED_YIELD sched_yield(); -@@ -1036,7 +1069,8 @@ NTSTATUS WINAPI NtYieldExecution(void) +@@ -1038,7 +1071,8 @@ NTSTATUS WINAPI NtYieldExecution(void) /****************************************************************** * NtDelayExecution (NTDLL.@) */ @@ -1724,7 +1724,7 @@ index aa58442..45bac3e 100644 { /* if alertable, we need to query the server */ if (alertable) -@@ -1079,7 +1113,8 @@ NTSTATUS WINAPI NtDelayExecution( BOOLEAN alertable, const LARGE_INTEGER *timeou +@@ -1081,7 +1115,8 @@ NTSTATUS WINAPI NtDelayExecution( BOOLEAN alertable, const LARGE_INTEGER *timeou /****************************************************************************** * NtCreateKeyedEvent (NTDLL.@) */ @@ -1734,7 +1734,7 @@ index aa58442..45bac3e 100644 const OBJECT_ATTRIBUTES *attr, ULONG flags ) { NTSTATUS ret; -@@ -1104,7 +1139,8 @@ NTSTATUS WINAPI NtCreateKeyedEvent( HANDLE *handle, ACCESS_MASK access, +@@ -1106,7 +1141,8 @@ NTSTATUS WINAPI NtCreateKeyedEvent( HANDLE *handle, ACCESS_MASK access, /****************************************************************************** * NtOpenKeyedEvent (NTDLL.@) */ @@ -1744,7 +1744,7 @@ index aa58442..45bac3e 100644 { NTSTATUS ret; -@@ -1127,7 +1163,8 @@ NTSTATUS WINAPI NtOpenKeyedEvent( HANDLE *handle, ACCESS_MASK access, const OBJE +@@ -1129,7 +1165,8 @@ NTSTATUS WINAPI NtOpenKeyedEvent( HANDLE *handle, ACCESS_MASK access, const OBJE /****************************************************************************** * NtWaitForKeyedEvent (NTDLL.@) */ @@ -1754,7 +1754,7 @@ index aa58442..45bac3e 100644 BOOLEAN alertable, const LARGE_INTEGER *timeout ) { select_op_t select_op; -@@ -1144,7 +1181,8 @@ NTSTATUS WINAPI NtWaitForKeyedEvent( HANDLE handle, const void *key, +@@ -1146,7 +1183,8 @@ NTSTATUS WINAPI NtWaitForKeyedEvent( HANDLE handle, const void *key, /****************************************************************************** * NtReleaseKeyedEvent (NTDLL.@) */ @@ -1764,7 +1764,7 @@ index aa58442..45bac3e 100644 BOOLEAN alertable, const LARGE_INTEGER *timeout ) { select_op_t select_op; -@@ -1171,7 +1209,8 @@ NTSTATUS WINAPI NtReleaseKeyedEvent( HANDLE handle, const void *key, +@@ -1173,7 +1211,8 @@ NTSTATUS WINAPI NtReleaseKeyedEvent( HANDLE handle, const void *key, * NumberOfConcurrentThreads [I] desired number of concurrent active worker threads * */ @@ -1774,7 +1774,7 @@ index aa58442..45bac3e 100644 POBJECT_ATTRIBUTES attr, ULONG NumberOfConcurrentThreads ) { NTSTATUS status; -@@ -1212,7 +1251,8 @@ NTSTATUS WINAPI NtCreateIoCompletion( PHANDLE CompletionPort, ACCESS_MASK Desire +@@ -1214,7 +1253,8 @@ NTSTATUS WINAPI NtCreateIoCompletion( PHANDLE CompletionPort, ACCESS_MASK Desire * Status [I] operation status * NumberOfBytesTransferred [I] number of bytes transferred */ @@ -1784,7 +1784,7 @@ index aa58442..45bac3e 100644 ULONG_PTR CompletionValue, NTSTATUS Status, SIZE_T NumberOfBytesTransferred ) { -@@ -1248,7 +1288,8 @@ NTSTATUS WINAPI NtSetIoCompletion( HANDLE CompletionPort, ULONG_PTR CompletionKe +@@ -1250,7 +1290,8 @@ NTSTATUS WINAPI NtSetIoCompletion( HANDLE CompletionPort, ULONG_PTR CompletionKe * WaitTime [I] optional wait time in NTDLL format * */ @@ -1794,7 +1794,7 @@ index aa58442..45bac3e 100644 PULONG_PTR CompletionValue, PIO_STATUS_BLOCK iosb, PLARGE_INTEGER WaitTime ) { -@@ -1291,7 +1332,8 @@ NTSTATUS WINAPI NtRemoveIoCompletion( HANDLE CompletionPort, PULONG_PTR Completi +@@ -1293,7 +1334,8 @@ NTSTATUS WINAPI NtRemoveIoCompletion( HANDLE CompletionPort, PULONG_PTR Completi * ObjectAttributes [I] completion object name * */ @@ -1804,7 +1804,7 @@ index aa58442..45bac3e 100644 { NTSTATUS status; -@@ -1326,7 +1368,8 @@ NTSTATUS WINAPI NtOpenIoCompletion( HANDLE *handle, ACCESS_MASK access, const OB +@@ -1328,7 +1370,8 @@ NTSTATUS WINAPI NtOpenIoCompletion( HANDLE *handle, ACCESS_MASK access, const OB * RequiredLength [O] required buffer length * */ diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index fa81dfc6..3cd114cc 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "b548f8c4a7b5bb82d6e1206939f638153aedce36" + echo "11be16ca799ac642fb636633392f4ec80e765da7" } # Show version information diff --git a/patches/wined3d-CSMT_Main/9999-IfDefined.patch b/patches/wined3d-CSMT_Main/9999-IfDefined.patch index b1963bfc..bee61601 100644 --- a/patches/wined3d-CSMT_Main/9999-IfDefined.patch +++ b/patches/wined3d-CSMT_Main/9999-IfDefined.patch @@ -8225,7 +8225,7 @@ diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c -@@ -3890,7 +3890,11 @@ +@@ -3994,7 +3994,11 @@ float y_offset = context->render_offscreen ? (center_offset - (2.0f * y) - h) / h : (center_offset - (2.0f * y) - h) / -h; @@ -8237,7 +8237,7 @@ diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c state->render_states[WINED3D_RS_ZENABLE] : WINED3D_ZB_FALSE; float z_scale = zenable ? 2.0f : 0.0f; float z_offset = zenable ? -1.0f : 0.0f; -@@ -4013,6 +4017,7 @@ +@@ -4117,6 +4121,7 @@ /* case WINED3D_TTFF_COUNT1: Won't ever get here. */ case WINED3D_TTFF_COUNT2: mat._13 = mat._23 = mat._33 = mat._43 = 0.0f; @@ -8245,7 +8245,7 @@ diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c /* OpenGL divides the first 3 vertex coord by the 4th by default, * which is essentially the same as D3DTTFF_PROJECTED. Make sure that * the 4th coord evaluates to 1.0 to eliminate that. -@@ -4025,6 +4030,20 @@ +@@ -4129,6 +4134,20 @@ * A more serious problem occurs if the app passes 4 coordinates in, and the * 4th is != 1.0(opengl default). This would have to be fixed in draw_strided_slow * or a replacement shader. */ @@ -8266,7 +8266,7 @@ diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c default: mat._14 = mat._24 = mat._34 = 0.0f; mat._44 = 1.0f; } -@@ -4684,7 +4703,11 @@ +@@ -4788,7 +4807,11 @@ break; } }