Rebase against 11be16ca799ac642fb636633392f4ec80e765da7.

This commit is contained in:
Sebastian Lackner 2016-02-10 03:34:43 +01:00
parent 106d3d5461
commit 4d81da5229
4 changed files with 93 additions and 93 deletions

View File

@ -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?= <michael@fds-team.de>
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

View File

@ -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 <sebastian@fds-team.de>
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
*
*/

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "b548f8c4a7b5bb82d6e1206939f638153aedce36"
echo "11be16ca799ac642fb636633392f4ec80e765da7"
}
# Show version information

View File

@ -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;
}
}