diff --git a/LICENSE.md b/LICENSE.md index 5f2f0e23..1bf866fc 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -8,6 +8,7 @@ are part of **Wine Staging** and are licensed under the terms of the ``` Copyright (C) 2014-2017 the Wine Staging project authors. +Copyright (C) 2018 Alistair Leslie-Hughes Wine Staging is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public diff --git a/patches/advapi32-BuildSecurityDescriptor/definition b/patches/advapi32-BuildSecurityDescriptor/definition index 213cfd64..10d34c8c 100644 --- a/patches/advapi32-BuildSecurityDescriptor/definition +++ b/patches/advapi32-BuildSecurityDescriptor/definition @@ -1,2 +1 @@ Fixes: Initial implementation of advapi32.BuildSecurityDescriptorW -Depends: advapi32-GetExplicitEntriesFromAclW diff --git a/patches/advapi32-Token_Integrity_Level/definition b/patches/advapi32-Token_Integrity_Level/definition index 01b8ac79..e50942c7 100644 --- a/patches/advapi32-Token_Integrity_Level/definition +++ b/patches/advapi32-Token_Integrity_Level/definition @@ -1,7 +1,6 @@ Fixes: [40613] Basic implementation for token integrity levels and UAC handling Fixes: [39262] Run explorer.exe as unevaluated process Depends: advapi32-CreateRestrictedToken -Depends: advapi32-GetExplicitEntriesFromAclW Depends: kernel32-COMSPEC Depends: kernel32-UmsStubs Depends: ntdll-APC_Start_Process diff --git a/patches/d3d11-Deferred_Context/definition b/patches/d3d11-Deferred_Context/definition index 797f073a..a14e8525 100644 --- a/patches/d3d11-Deferred_Context/definition +++ b/patches/d3d11-Deferred_Context/definition @@ -1,3 +1,2 @@ Fixes: [42191] Add semi-stub for D3D11 deferred context implementation Depends: wined3d-1DTextures -Depends: d3d11-ResolveSubresource diff --git a/patches/d3dx9_36-D3DXDisassembleShader/definition b/patches/d3dx9_36-D3DXDisassembleShader/definition index dca6cf56..debd240c 100644 --- a/patches/d3dx9_36-D3DXDisassembleShader/definition +++ b/patches/d3dx9_36-D3DXDisassembleShader/definition @@ -1,2 +1 @@ Fixes: Initial implementation for d3dx9_36.D3DXDisassembleShader -Depends: d3dx9_36-GetShaderSemantics diff --git a/patches/kernel32-SetFileCompletionNotificationModes/definition b/patches/kernel32-SetFileCompletionNotificationModes/definition index 965c6f02..38d4bcfd 100644 --- a/patches/kernel32-SetFileCompletionNotificationModes/definition +++ b/patches/kernel32-SetFileCompletionNotificationModes/definition @@ -1,2 +1 @@ Fixes: [38960] Add support for kernel32.SetFileCompletionNotificationModes -Depends: ntdll-FileNameInformation diff --git a/patches/ntdll-Attach_Process_DLLs/0001-ntdll-Ensure-process-dlls-are-not-attached-too-early.patch b/patches/ntdll-Attach_Process_DLLs/0001-ntdll-Ensure-process-dlls-are-not-attached-too-early.patch deleted file mode 100644 index 7f632214..00000000 --- a/patches/ntdll-Attach_Process_DLLs/0001-ntdll-Ensure-process-dlls-are-not-attached-too-early.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 0cb287b9ba62ee9e353248861d4c177f7db48dcb Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Wed, 20 Jul 2016 02:21:41 +0200 -Subject: ntdll: Ensure process dlls are not attached too early. (v2) - ---- - dlls/ntdll/loader.c | 17 ++++++++++++++++- - 1 file changed, 16 insertions(+), 1 deletion(-) - -diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c -index 518a99f590..94668e8ba4 100644 ---- a/dlls/ntdll/loader.c -+++ b/dlls/ntdll/loader.c -@@ -64,6 +64,7 @@ typedef DWORD (CALLBACK *DLLENTRYPROC)(H - typedef void (CALLBACK *LDRENUMPROC)(LDR_MODULE *, void *, BOOLEAN *); - - static BOOL imports_fixup_done = FALSE; /* set once the imports have been fixed up, before attaching them */ -+static BOOL process_attaching = TRUE; /* set on process attach to avoid calling callbacks too early */ - static BOOL process_detaching = FALSE; /* set on process detach to avoid deadlocks with thread detach */ - static int free_lib_count; /* recursion depth of LdrUnloadDll calls */ - -@@ -459,6 +460,19 @@ static FARPROC find_forwarded_export( HM - current_modref->deps = deps; - } - } -+ if (process_attaching) -+ { -+ WINE_MODREF **deps, *prev = get_modref( module ); -+ if (!prev->deps) -+ deps = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*deps) ); -+ else -+ deps = RtlReAllocateHeap( GetProcessHeap(), 0, prev->deps, (prev->nDeps + 1) * sizeof(*deps) ); -+ if (deps) -+ { -+ prev->deps = deps; -+ prev->deps[prev->nDeps++] = wm; -+ } -+ } - else if (process_attach( wm, NULL ) != STATUS_SUCCESS) - { - LdrUnloadDll( wm->ldr.BaseAddress ); -@@ -2995,6 +3009,7 @@ NTSTATUS attach_dlls( CONTEXT *context ) - WINE_MODREF *wm; - LPCWSTR load_path = NtCurrentTeb()->Peb->ProcessParameters->DllPath.Buffer; - -+ process_attaching = FALSE; - pthread_sigmask( SIG_UNBLOCK, &server_block_set, NULL ); - - if (process_detaching) return STATUS_SUCCESS; --- -2.12.2 - diff --git a/patches/ntdll-Attach_Process_DLLs/definition b/patches/ntdll-Attach_Process_DLLs/definition deleted file mode 100644 index ef33f975..00000000 --- a/patches/ntdll-Attach_Process_DLLs/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [40714] Ensure process_attach callbacks are not executed too early diff --git a/patches/ntdll-DllRedirects/definition b/patches/ntdll-DllRedirects/definition index de4044a8..d7aac176 100644 --- a/patches/ntdll-DllRedirects/definition +++ b/patches/ntdll-DllRedirects/definition @@ -1,4 +1,3 @@ Fixes: Support for loader dll redirections Depends: ntdll-Loader_Machine_Type Depends: ntdll-DllOverrides_WOW64 -Depends: ntdll-Attach_Process_DLLs diff --git a/patches/ntdll-Hide_Wine_Exports/definition b/patches/ntdll-Hide_Wine_Exports/definition index aa1866de..bc63a18f 100644 --- a/patches/ntdll-Hide_Wine_Exports/definition +++ b/patches/ntdll-Hide_Wine_Exports/definition @@ -1,3 +1,2 @@ Fixes: [38656] Add support for hiding wine version information from applications -Depends: ntdll-Attach_Process_DLLs Depends: ntdll-ThreadTime diff --git a/patches/ntdll-Pipe_SpecialCharacters/0001-ntdll-Allow-special-characters-in-pipe-names.patch b/patches/ntdll-Pipe_SpecialCharacters/0001-ntdll-Allow-special-characters-in-pipe-names.patch index db06fd41..02d56a91 100644 --- a/patches/ntdll-Pipe_SpecialCharacters/0001-ntdll-Allow-special-characters-in-pipe-names.patch +++ b/patches/ntdll-Pipe_SpecialCharacters/0001-ntdll-Allow-special-characters-in-pipe-names.patch @@ -1,7 +1,7 @@ -From d5092cdd3d4df589f50b52c75bd50127c59f545d Mon Sep 17 00:00:00 2001 +From 6250b3812eea73306a90ac68d329f16cb4436e8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sun, 27 Jul 2014 03:35:42 +0200 -Subject: ntdll: Allow special characters in pipe names. +Subject: [PATCH] ntdll: Allow special characters in pipe names. Based on patch by Valentyn Pavliuchenko. --- @@ -10,10 +10,10 @@ Based on patch by Valentyn Pavliuchenko. 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c -index f7c7531..04de950 100644 +index 22d120f..8e5c07f 100644 --- a/dlls/kernel32/tests/pipe.c +++ b/dlls/kernel32/tests/pipe.c -@@ -29,6 +29,7 @@ +@@ -30,6 +30,7 @@ #include "wine/test.h" #define PIPENAME "\\\\.\\PiPe\\tests_pipe.c" @@ -21,7 +21,7 @@ index f7c7531..04de950 100644 #define NB_SERVER_LOOPS 8 -@@ -335,6 +336,15 @@ static void test_CreateNamedPipe(int pipemode) +@@ -627,6 +628,15 @@ static void test_CreateNamedPipe(int pipemode) ok(CloseHandle(hnp), "CloseHandle\n"); @@ -34,14 +34,14 @@ index f7c7531..04de950 100644 + ok(hnp != INVALID_HANDLE_VALUE, "CreateNamedPipe with special characters failed\n"); + ok(CloseHandle(hnp), "CloseHandle\n"); + - trace("test_CreateNamedPipe returning\n"); + if (winetest_debug > 1) trace("test_CreateNamedPipe returning\n"); } diff --git a/dlls/ntdll/directory.c b/dlls/ntdll/directory.c -index 04a5b75..6558958 100644 +index 3b76f9b..4206584 100644 --- a/dlls/ntdll/directory.c +++ b/dlls/ntdll/directory.c -@@ -3009,6 +3009,7 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI +@@ -2825,6 +2825,7 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI UINT disposition, BOOLEAN check_case ) { static const WCHAR unixW[] = {'u','n','i','x'}; @@ -49,7 +49,7 @@ index 04a5b75..6558958 100644 static const WCHAR invalid_charsW[] = { INVALID_NT_CHARS, 0 }; NTSTATUS status = STATUS_SUCCESS; -@@ -3019,6 +3020,7 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI +@@ -2835,6 +2836,7 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI int pos, ret, name_len, unix_len, prefix_len, used_default; WCHAR prefix[MAX_DIR_ENTRY_LEN]; BOOLEAN is_unix = FALSE; @@ -57,7 +57,7 @@ index 04a5b75..6558958 100644 name = nameW->Buffer; name_len = nameW->Length / sizeof(WCHAR); -@@ -3050,13 +3052,17 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI +@@ -2868,13 +2870,17 @@ NTSTATUS CDECL wine_nt_to_unix_file_name( const UNICODE_STRING *nameW, ANSI_STRI name += prefix_len; name_len -= prefix_len; @@ -80,5 +80,5 @@ index 04a5b75..6558958 100644 else { -- -1.8.3.2 +2.7.4 diff --git a/patches/ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch b/patches/ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch index 6aafd48d..409b88e7 100644 --- a/patches/ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch +++ b/patches/ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch @@ -1,7 +1,7 @@ -From 29ec5605140dec0a480bde2024c3ef8a682eb46e Mon Sep 17 00:00:00 2001 +From f5711f1aa3676f55e7defb3996163e3fb327fc1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sun, 17 Jan 2016 00:50:50 +0100 -Subject: ntdll/tests: Add basic tests for RtlQueryPackageIdentity. +Subject: [PATCH 3/3] ntdll/tests: Add basic tests for RtlQueryPackageIdentity. --- dlls/ntdll/tests/Makefile.in | 2 +- @@ -9,7 +9,7 @@ Subject: ntdll/tests: Add basic tests for RtlQueryPackageIdentity. 2 files changed, 77 insertions(+), 1 deletion(-) diff --git a/dlls/ntdll/tests/Makefile.in b/dlls/ntdll/tests/Makefile.in -index fc352dd22b..0de4fe8f20 100644 +index fc352dd..0de4fe8 100644 --- a/dlls/ntdll/tests/Makefile.in +++ b/dlls/ntdll/tests/Makefile.in @@ -1,5 +1,5 @@ @@ -20,7 +20,7 @@ index fc352dd22b..0de4fe8f20 100644 C_SRCS = \ atom.c \ diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c -index 7176e448ef..8292f72527 100644 +index 2e3a7de..02ae1c1 100644 --- a/dlls/ntdll/tests/rtl.c +++ b/dlls/ntdll/tests/rtl.c @@ -25,6 +25,9 @@ @@ -38,19 +38,19 @@ index 7176e448ef..8292f72527 100644 static NTSTATUS (WINAPI *pRtlInitializeCriticalSectionEx)(CRITICAL_SECTION *, ULONG, ULONG); static NTSTATUS (WINAPI *pLdrEnumerateLoadedModules)(void *, void *, void *); +static NTSTATUS (WINAPI *pRtlQueryPackageIdentity)(HANDLE, WCHAR*, SIZE_T*, WCHAR*, SIZE_T*, BOOLEAN*); + static NTSTATUS (WINAPI *pRtlMakeSelfRelativeSD)(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,LPDWORD); + static NTSTATUS (WINAPI *pRtlAbsoluteToSelfRelativeSD)(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PULONG); - static HMODULE hkernel32 = 0; - static BOOL (WINAPI *pIsWow64Process)(HANDLE, PBOOL); -@@ -153,6 +157,7 @@ static void InitFunctionPtrs(void) +@@ -155,6 +159,7 @@ static void InitFunctionPtrs(void) pRtlIsCriticalSectionLockedByThread = (void *)GetProcAddress(hntdll, "RtlIsCriticalSectionLockedByThread"); pRtlInitializeCriticalSectionEx = (void *)GetProcAddress(hntdll, "RtlInitializeCriticalSectionEx"); pLdrEnumerateLoadedModules = (void *)GetProcAddress(hntdll, "LdrEnumerateLoadedModules"); + pRtlQueryPackageIdentity = (void *)GetProcAddress(hntdll, "RtlQueryPackageIdentity"); + pRtlMakeSelfRelativeSD = (void *)GetProcAddress(hntdll, "RtlMakeSelfRelativeSD"); + pRtlAbsoluteToSelfRelativeSD = (void *)GetProcAddress(hntdll, "RtlAbsoluteToSelfRelativeSD"); } - hkernel32 = LoadLibraryA("kernel32.dll"); - ok(hkernel32 != 0, "LoadLibrary failed\n"); -@@ -2209,6 +2214,76 @@ static void test_LdrEnumerateLoadedModules(void) - ok(status == STATUS_INVALID_PARAMETER, "expected STATUS_INVALID_PARAMETER, got 0x%08x\n", status); +@@ -2259,6 +2264,76 @@ static void test_RtlMakeSelfRelativeSD(void) + ok( status == STATUS_BAD_DESCRIPTOR_FORMAT, "got %08x\n", status ); } +static void test_RtlQueryPackageIdentity(void) @@ -126,12 +126,13 @@ index 7176e448ef..8292f72527 100644 START_TEST(rtl) { InitFunctionPtrs(); -@@ -2242,4 +2317,5 @@ START_TEST(rtl) +@@ -2292,5 +2367,6 @@ START_TEST(rtl) test_RtlInitializeCriticalSectionEx(); test_RtlLeaveCriticalSection(); test_LdrEnumerateLoadedModules(); + test_RtlQueryPackageIdentity(); + test_RtlMakeSelfRelativeSD(); } -- -2.12.2 +2.7.4 diff --git a/patches/ntdll-Threading/0001-ntdll-Fix-race-condition-when-threads-are-killed-dur.patch b/patches/ntdll-Threading/0001-ntdll-Fix-race-condition-when-threads-are-killed-dur.patch index 3d85c76b..91061093 100644 --- a/patches/ntdll-Threading/0001-ntdll-Fix-race-condition-when-threads-are-killed-dur.patch +++ b/patches/ntdll-Threading/0001-ntdll-Fix-race-condition-when-threads-are-killed-dur.patch @@ -1,7 +1,8 @@ -From f7a85ba8219c46b226376aed23f2d81bfff902dc Mon Sep 17 00:00:00 2001 +From 67bbbb723dc971116a7b9569081baf2dc387e2ac Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Wed, 25 Feb 2015 22:45:42 +0100 -Subject: ntdll: Fix race-condition when threads are killed during shutdown. +Subject: [PATCH] ntdll: Fix race-condition when threads are killed during + shutdown. When exit_thread is executed, nb_threads is decremented before the thread is fully shutdown. When another thread runs ExitProcess() this will cause a SIGQUIT @@ -18,18 +19,18 @@ fix the most critical one (messed up refcounting of threads) for now. 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c -index 3696c8e..74e64c9 100644 +index c999d4b..5e02966 100644 --- a/dlls/ntdll/thread.c +++ b/dlls/ntdll/thread.c -@@ -370,6 +370,7 @@ void terminate_thread( int status ) - void exit_thread( int status ) +@@ -459,6 +459,7 @@ void exit_thread( int status ) + void WINAPI RtlExitUserThread( ULONG status ) { static void *prev_teb; + sigset_t sigset; TEB *teb; if (status) /* send the exit code to the server (0 is already the default) */ -@@ -383,7 +384,7 @@ void exit_thread( int status ) +@@ -472,7 +473,7 @@ void WINAPI RtlExitUserThread( ULONG status ) SERVER_END_REQ; } @@ -37,8 +38,8 @@ index 3696c8e..74e64c9 100644 + if (interlocked_xchg_add( &nb_threads, 0 ) <= 1) { LdrShutdownProcess(); - exit( status ); -@@ -405,6 +406,11 @@ void exit_thread( int status ) + pthread_sigmask( SIG_BLOCK, &server_block_set, NULL ); +@@ -495,6 +496,11 @@ void WINAPI RtlExitUserThread( ULONG status ) } } @@ -47,9 +48,9 @@ index 3696c8e..74e64c9 100644 + pthread_sigmask( SIG_BLOCK, &sigset, NULL ); + if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status ); + - close( ntdll_get_thread_data()->wait_fd[0] ); - close( ntdll_get_thread_data()->wait_fd[1] ); - close( ntdll_get_thread_data()->reply_fd ); + signal_exit_thread( status ); + } + -- -2.3.0 +2.7.4 diff --git a/patches/ntdll-x86_64_ExceptionInformation/0002-ntdll-Avoid-crash-when-trying-to-access-page-prot-of.patch b/patches/ntdll-x86_64_ExceptionInformation/0002-ntdll-Avoid-crash-when-trying-to-access-page-prot-of.patch deleted file mode 100644 index 6cdd46e2..00000000 --- a/patches/ntdll-x86_64_ExceptionInformation/0002-ntdll-Avoid-crash-when-trying-to-access-page-prot-of.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 70bb327be039fc1d2b39df43af59e3d138724eff Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Wed, 4 Oct 2017 01:47:29 +0200 -Subject: ntdll: Avoid crash when trying to access page prot of address beyond - address space limit. - ---- - dlls/ntdll/virtual.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/dlls/ntdll/virtual.c b/dlls/ntdll/virtual.c -index a496401e028..368e0ad0f9e 100644 ---- a/dlls/ntdll/virtual.c -+++ b/dlls/ntdll/virtual.c -@@ -196,6 +196,7 @@ static BYTE get_page_vprot( const void *addr ) - size_t idx = (size_t)addr >> page_shift; - - #ifdef _WIN64 -+ if ((idx >> pages_vprot_shift) >= pages_vprot_size) return 0; - if (!pages_vprot[idx >> pages_vprot_shift]) return 0; - return pages_vprot[idx >> pages_vprot_shift][idx & pages_vprot_mask]; - #else --- -2.14.1 - diff --git a/patches/ole32-HGLOBALStream/0001-ole32-tests-Add-a-bunch-of-tests-for-HGLOBAL-based-I.patch b/patches/ole32-HGLOBALStream/0001-ole32-tests-Add-a-bunch-of-tests-for-HGLOBAL-based-I.patch index f402a0c1..a8486600 100644 --- a/patches/ole32-HGLOBALStream/0001-ole32-tests-Add-a-bunch-of-tests-for-HGLOBAL-based-I.patch +++ b/patches/ole32-HGLOBALStream/0001-ole32-tests-Add-a-bunch-of-tests-for-HGLOBAL-based-I.patch @@ -1,14 +1,15 @@ -From 267315dd040ccfa527f8ba48038a268236ca1d29 Mon Sep 17 00:00:00 2001 +From ecbbd1eba3491e634bb138044bb8e283be7bba28 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 2 Feb 2016 12:49:16 +0800 -Subject: ole32/tests: Add a bunch of tests for HGLOBAL based IStream::Clone. +Subject: [PATCH 1/7] ole32/tests: Add a bunch of tests for HGLOBAL based + IStream::Clone. --- - dlls/ole32/tests/hglobalstream.c | 244 +++++++++++++++++++++++++++++++++++++++ - 1 file changed, 244 insertions(+) + dlls/ole32/tests/hglobalstream.c | 243 +++++++++++++++++++++++++++++++++++++++ + 1 file changed, 243 insertions(+) diff --git a/dlls/ole32/tests/hglobalstream.c b/dlls/ole32/tests/hglobalstream.c -index e20d81b..0dc3c52 100644 +index 6a0498a..d8b8081 100644 --- a/dlls/ole32/tests/hglobalstream.c +++ b/dlls/ole32/tests/hglobalstream.c @@ -2,6 +2,7 @@ @@ -19,7 +20,7 @@ index e20d81b..0dc3c52 100644 * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public -@@ -508,11 +509,254 @@ static void test_freed_hglobal(void) +@@ -514,9 +515,251 @@ static void test_freed_hglobal(void) IStream_Release(pStream); } @@ -266,14 +267,11 @@ index e20d81b..0dc3c52 100644 + START_TEST(hglobalstream) { - HRESULT hr; - IStream *pStream; - + test_streamonhglobal(); + test_copyto(); + test_freed_hglobal(); + test_IStream_Clone(); -+ - hr = CreateStreamOnHGlobal(NULL, TRUE, &pStream); - ok_ole_success(hr, "CreateStreamOnHGlobal"); - + } -- -2.7.0 +2.7.4 diff --git a/patches/oleaut32-TKIND_COCLASS/0002-oleaut32-Implement-ITypeInfo_fnInvoke-for-TKIND_COCL.patch b/patches/oleaut32-TKIND_COCLASS/0002-oleaut32-Implement-ITypeInfo_fnInvoke-for-TKIND_COCL.patch index edf777bb..fde45e0d 100644 --- a/patches/oleaut32-TKIND_COCLASS/0002-oleaut32-Implement-ITypeInfo_fnInvoke-for-TKIND_COCL.patch +++ b/patches/oleaut32-TKIND_COCLASS/0002-oleaut32-Implement-ITypeInfo_fnInvoke-for-TKIND_COCL.patch @@ -1,8 +1,8 @@ -From 1bb32d84f5ac99211790aa596c995cb0b1a6c88f Mon Sep 17 00:00:00 2001 +From 8e2413e84cb6fe83b5a095f36372288c265dff97 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 14 Nov 2015 23:45:18 +0100 -Subject: oleaut32: Implement ITypeInfo_fnInvoke for TKIND_COCLASS in - arguments. +Subject: [PATCH 2/4] oleaut32: Implement ITypeInfo_fnInvoke for TKIND_COCLASS + in arguments. --- dlls/oleaut32/tests/tmarshal.c | 2 +- @@ -10,23 +10,23 @@ Subject: oleaut32: Implement ITypeInfo_fnInvoke for TKIND_COCLASS in 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/dlls/oleaut32/tests/tmarshal.c b/dlls/oleaut32/tests/tmarshal.c -index 96399cc..758b85f 100644 +index 00cb464..6aa68c7 100644 --- a/dlls/oleaut32/tests/tmarshal.c +++ b/dlls/oleaut32/tests/tmarshal.c -@@ -1514,7 +1514,7 @@ static void test_typelibmarshal(void) +@@ -1524,7 +1524,7 @@ static void test_typelibmarshal(void) dispparams.rgvarg = vararg; VariantInit(&varresult); hr = IDispatch_Invoke(pDispatch, DISPID_TM_COCLASS, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_METHOD, &dispparams, &varresult, &excepinfo, NULL); - todo_wine ok_ole_success(hr, IDispatch_Invoke); + ok_ole_success(hr, IDispatch_Invoke); + todo_wine_if(tmarshal_todo) ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK, "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n", - excepinfo.wCode, excepinfo.scode); diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c -index deb898a..1cfdd7b 100644 +index ebc5c39..69072d3 100644 --- a/dlls/oleaut32/typelib.c +++ b/dlls/oleaut32/typelib.c -@@ -6638,6 +6638,21 @@ static HRESULT get_iface_guid(ITypeInfo *tinfo, HREFTYPE href, GUID *guid) +@@ -6623,6 +6623,21 @@ static HRESULT get_iface_guid(ITypeInfo *tinfo, HREFTYPE href, GUID *guid) *guid = tattr->guid; break; @@ -49,5 +49,5 @@ index deb898a..1cfdd7b 100644 ERR("Unexpected typekind %d\n", tattr->typekind); hres = E_UNEXPECTED; -- -2.6.2 +2.7.4 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 6ecf5006..df6ffa8e 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "65989f2ace1b06617638e31cb7ba56deb38fe690" + echo "2936f3f9bb9dc01c595498a821d6adb6775b62cc" } # Show version information @@ -60,6 +60,7 @@ version() { echo "Wine Staging 3.1 (Unreleased)" echo "Copyright (C) 2014-2018 the Wine Staging project authors." + echo "Copyright (C) 2018 Alistair Leslie-Hughes" echo "" echo "Patchset to be applied on upstream Wine:" echo " commit $(upstream_commit)" @@ -111,12 +112,10 @@ patch_enable_all () enable_crypt32_CryptUnprotectMemory="$1" enable_crypt32_ECDSA_Cert_Chains="$1" enable_crypt32_MS_Root_Certs="$1" - enable_crypt32_SHA_OIDs="$1" enable_d3d10_1_Forwards="$1" enable_d3d11_Deferred_Context="$1" enable_d3d11_Depth_Bias="$1" enable_d3d11_ID3D11Texture1D="$1" - enable_d3d11_ResolveSubresource="$1" enable_d3d11_Silence_FIXMEs="$1" enable_d3d8_ValidateShader="$1" enable_d3d9_DesktopWindow="$1" @@ -135,7 +134,6 @@ patch_enable_all () enable_d3dx9_36_Dummy_Skininfo="$1" enable_d3dx9_36_Filter_Warnings="$1" enable_d3dx9_36_FindNextValidTechnique="$1" - enable_d3dx9_36_GetShaderSemantics="$1" enable_d3dx9_36_Optimize_Inplace="$1" enable_d3dx9_36_Tests="$1" enable_d3dx9_36_Texture_Align="$1" @@ -157,11 +155,9 @@ patch_enable_all () enable_dsound_Fast_Mixer="$1" enable_dsound_Revert_Cleanup="$1" enable_dwmapi_DwmSetIcon="$1" - enable_dxdiag_dontskip="$1" enable_dxdiagn_Display_Information="$1" enable_dxdiagn_Enumerate_DirectSound="$1" enable_dxdiagn_GetChildContainer_Leaf_Nodes="$1" - enable_dxgi_DXGI_PRESENT_TEST="$1" enable_dxgi_GammaRamp="$1" enable_dxgi_MakeWindowAssociation="$1" enable_dxva2_Video_Decoder="$1" @@ -194,7 +190,6 @@ patch_enable_all () enable_kernel32_Job_Tests="$1" enable_kernel32_K32GetPerformanceInfo="$1" enable_kernel32_LocaleNameToLCID="$1" - enable_kernel32_MODULE_get_binary_info="$1" enable_kernel32_Misalign_Workaround="$1" enable_kernel32_MoveFile="$1" enable_kernel32_NeedCurrentDirectoryForExePath="$1" @@ -234,7 +229,6 @@ patch_enable_all () enable_ntdll_Activation_Context="$1" enable_ntdll_ApiSetMap="$1" enable_ntdll_ApiSetQueryApiSetPresence="$1" - enable_ntdll_Attach_Process_DLLs="$1" enable_ntdll_Builtin_Prot="$1" enable_ntdll_CLI_Images="$1" enable_ntdll_CriticalSection="$1" @@ -248,7 +242,6 @@ patch_enable_all () enable_ntdll_FileDispositionInformation="$1" enable_ntdll_FileFsFullSizeInformation="$1" enable_ntdll_FileFsVolumeInformation="$1" - enable_ntdll_FileNameInformation="$1" enable_ntdll_Fix_Alignment="$1" enable_ntdll_HashLinks="$1" enable_ntdll_Heap_Improvements="$1" @@ -324,7 +317,6 @@ patch_enable_all () enable_packager_DllMain="$1" enable_quartz_MediaSeeking_Positions="$1" enable_quartz_Silence_FIXMEs="$1" - enable_rasapi32_RasGetConnectionStatistics="$1" enable_riched20_Class_Tests="$1" enable_riched20_IText_Interface="$1" enable_rpcrt4_Race_Condition="$1" @@ -396,14 +388,12 @@ patch_enable_all () enable_user32_GetAutoRotationState="$1" enable_user32_GetSystemMetrics="$1" enable_user32_Groupbox_Rectangle="$1" - enable_user32_Invalidate_Key_State="$1" enable_user32_LR_LOADFROMFILE="$1" enable_user32_ListBox_Size="$1" enable_user32_MessageBox_WS_EX_TOPMOST="$1" enable_user32_Mouse_Message_Hwnd="$1" enable_user32_PNG_Support="$1" enable_user32_Refresh_MDI_Menus="$1" - enable_user32_Revert_ListBox_Height="$1" enable_user32_ScrollWindowEx="$1" enable_user32_ShowWindow="$1" enable_user32_Sorted_Listbox="$1" @@ -421,7 +411,6 @@ patch_enable_all () enable_wbemprox_Printer="$1" enable_wbemprox_Win32_OperatingSystem="$1" enable_wbemprox_Win32_VideoController="$1" - enable_wevtapi_EvtNext="$1" enable_widl_SLTG_Typelib_Support="$1" enable_windowscodecs_32bppPRGBA="$1" enable_windowscodecs_GIF_Encoder="$1" @@ -457,7 +446,6 @@ patch_enable_all () enable_wined3d_Indexed_Vertex_Blending="$1" enable_wined3d_Limit_Vram="$1" enable_wined3d_QUERY_Stubs="$1" - enable_wined3d_Revert_Buffer_Upload="$1" enable_wined3d_Revert_Surface_Blt="$1" enable_wined3d_Silence_FIXMEs="$1" enable_wined3d_UAV_Counters="$1" @@ -513,7 +501,6 @@ patch_enable_all () enable_wtsapi32_WTSQueryUserToken="$1" enable_wuauserv_Dummy_Service="$1" enable_wusa_MSU_Package_Installer="$1" - enable_xaudio2_get_al_format="$1" enable_xaudio2_7_OnVoiceProcessingPassStart="$1" } @@ -959,9 +946,6 @@ patch_enable () ntdll-ApiSetQueryApiSetPresence) enable_ntdll_ApiSetQueryApiSetPresence="$2" ;; - ntdll-Attach_Process_DLLs) - enable_ntdll_Attach_Process_DLLs="$2" - ;; ntdll-Builtin_Prot) enable_ntdll_Builtin_Prot="$2" ;; @@ -1226,9 +1210,6 @@ patch_enable () quartz-Silence_FIXMEs) enable_quartz_Silence_FIXMEs="$2" ;; - rasapi32-RasGetConnectionStatistics) - enable_rasapi32_RasGetConnectionStatistics="$2" - ;; riched20-Class_Tests) enable_riched20_Class_Tests="$2" ;; @@ -1442,9 +1423,6 @@ patch_enable () user32-Groupbox_Rectangle) enable_user32_Groupbox_Rectangle="$2" ;; - user32-Invalidate_Key_State) - enable_user32_Invalidate_Key_State="$2" - ;; user32-LR_LOADFROMFILE) enable_user32_LR_LOADFROMFILE="$2" ;; @@ -1463,9 +1441,6 @@ patch_enable () user32-Refresh_MDI_Menus) enable_user32_Refresh_MDI_Menus="$2" ;; - user32-Revert_ListBox_Height) - enable_user32_Revert_ListBox_Height="$2" - ;; user32-ScrollWindowEx) enable_user32_ScrollWindowEx="$2" ;; @@ -1517,9 +1492,6 @@ patch_enable () wbemprox-Win32_VideoController) enable_wbemprox_Win32_VideoController="$2" ;; - wevtapi-EvtNext) - enable_wevtapi_EvtNext="$2" - ;; widl-SLTG_Typelib_Support) enable_widl_SLTG_Typelib_Support="$2" ;; @@ -1625,9 +1597,6 @@ patch_enable () wined3d-QUERY_Stubs) enable_wined3d_QUERY_Stubs="$2" ;; - wined3d-Revert_Buffer_Upload) - enable_wined3d_Revert_Buffer_Upload="$2" - ;; wined3d-Revert_Surface_Blt) enable_wined3d_Revert_Surface_Blt="$2" ;; @@ -2197,7 +2166,6 @@ if test "$enable_wined3d_dxgi_swapchain_Present" -eq 1; then if test "$enable_wined3d_Silence_FIXMEs" -gt 1; then abort "Patchset wined3d-Silence_FIXMEs disabled, but wined3d-dxgi_swapchain_Present depends on that." fi - enable_dxgi_DXGI_PRESENT_TEST=1 enable_wined3d_Silence_FIXMEs=1 fi @@ -2249,9 +2217,6 @@ if test "$enable_wined3d_CSMT_Helper" -eq 1; then if test "$enable_wined3d_QUERY_Stubs" -gt 1; then abort "Patchset wined3d-QUERY_Stubs disabled, but wined3d-CSMT_Helper depends on that." fi - if test "$enable_wined3d_Revert_Buffer_Upload" -gt 1; then - abort "Patchset wined3d-Revert_Buffer_Upload disabled, but wined3d-CSMT_Helper depends on that." - fi if test "$enable_wined3d_Silence_FIXMEs" -gt 1; then abort "Patchset wined3d-Silence_FIXMEs disabled, but wined3d-CSMT_Helper depends on that." fi @@ -2269,7 +2234,6 @@ if test "$enable_wined3d_CSMT_Helper" -eq 1; then enable_wined3d_Dual_Source_Blending=1 enable_wined3d_GenerateMips=1 enable_wined3d_QUERY_Stubs=1 - enable_wined3d_Revert_Buffer_Upload=1 enable_wined3d_Silence_FIXMEs=1 enable_wined3d_UAV_Counters=1 fi @@ -2615,16 +2579,12 @@ if test "$enable_ntdll_HashLinks" -eq 1; then fi if test "$enable_ntdll_DllRedirects" -eq 1; then - if test "$enable_ntdll_Attach_Process_DLLs" -gt 1; then - abort "Patchset ntdll-Attach_Process_DLLs disabled, but ntdll-DllRedirects depends on that." - fi if test "$enable_ntdll_DllOverrides_WOW64" -gt 1; then abort "Patchset ntdll-DllOverrides_WOW64 disabled, but ntdll-DllRedirects depends on that." fi if test "$enable_ntdll_Loader_Machine_Type" -gt 1; then abort "Patchset ntdll-Loader_Machine_Type disabled, but ntdll-DllRedirects depends on that." fi - enable_ntdll_Attach_Process_DLLs=1 enable_ntdll_DllOverrides_WOW64=1 enable_ntdll_Loader_Machine_Type=1 fi @@ -2663,13 +2623,9 @@ if test "$enable_ntdll_User_Shared_Data" -eq 1; then fi if test "$enable_ntdll_Hide_Wine_Exports" -eq 1; then - if test "$enable_ntdll_Attach_Process_DLLs" -gt 1; then - abort "Patchset ntdll-Attach_Process_DLLs disabled, but ntdll-Hide_Wine_Exports depends on that." - fi if test "$enable_ntdll_ThreadTime" -gt 1; then abort "Patchset ntdll-ThreadTime disabled, but ntdll-Hide_Wine_Exports depends on that." fi - enable_ntdll_Attach_Process_DLLs=1 enable_ntdll_ThreadTime=1 fi @@ -2727,10 +2683,6 @@ if test "$enable_loader_OSX_Preloader" -eq 1; then enable_configure_Absolute_RPATH=1 fi -if test "$enable_kernel32_SetFileCompletionNotificationModes" -eq 1; then - enable_ntdll_FileNameInformation=1 -fi - if test "$enable_kernel32_Processor_Group" -eq 1; then if test "$enable_api_ms_win_Stub_DLLs" -gt 1; then abort "Patchset api-ms-win-Stub_DLLs disabled, but kernel32-Processor_Group depends on that." @@ -2813,7 +2765,6 @@ if test "$enable_d3d11_Deferred_Context" -eq 1; then if test "$enable_wined3d_1DTextures" -gt 1; then abort "Patchset wined3d-1DTextures disabled, but d3d11-Deferred_Context depends on that." fi - enable_d3d11_ResolveSubresource=1 enable_wined3d_1DTextures=1 fi @@ -2881,6 +2832,7 @@ if test "$enable_advapi32_LsaLookupSids" -eq 1; then enable_server_Misc_ACL=1 fi + # If autoupdate is enabled then create a tempfile to keep track of all patches if test "$enable_patchlist" -eq 1; then if test "$enable_Staging" -eq 1; then @@ -2968,7 +2920,7 @@ if test "$enable_Pipelight" -eq 1; then patch_apply Pipelight/0001-winex11-Implement-X11DRV_FLUSH_GDI_DISPLAY-ExtEscape-c.patch patch_apply Pipelight/0002-user32-Decrease-minimum-SetTimer-interval-to-5-ms.patch patch_apply Pipelight/0003-wined3d-allow-changing-strict-drawing-through-an-exp.patch - #patch_apply Pipelight/0004-winex11.drv-Indicate-direct-rendering-through-OpenGL.patch + patch_apply Pipelight/0004-winex11.drv-Indicate-direct-rendering-through-OpenGL.patch ( printf '%s\n' '+ { "Sebastian Lackner", "winex11: Implement X11DRV_FLUSH_GDI_DISPLAY ExtEscape command.", 1 },'; printf '%s\n' '+ { "Michael Müller", "user32: Decrease minimum SetTimer interval to 5 ms.", 2 },'; @@ -3014,9 +2966,6 @@ fi # Patchset advapi32-BuildSecurityDescriptor # | -# | This patchset has the following (direct or indirect) dependencies: -# | * advapi32-GetExplicitEntriesFromAclW -# | # | Modified files: # | * dlls/advapi32/security.c, dlls/advapi32/tests/security.c # | @@ -3199,7 +3148,7 @@ fi # Patchset ntdll-RunlevelInformationInActivationContext # | # | Modified files: -# | * dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c, include/winnt.h +# | * dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c # | if test "$enable_ntdll_RunlevelInformationInActivationContext" -eq 1; then patch_apply ntdll-RunlevelInformationInActivationContext/0002-ntdll-Parse-execution-level-information-in-manifest-.patch @@ -3213,9 +3162,8 @@ fi # Patchset advapi32-Token_Integrity_Level # | # | This patchset has the following (direct or indirect) dependencies: -# | * Staging, advapi32-CreateRestrictedToken, advapi32-GetExplicitEntriesFromAclW, kernel32-COMSPEC, kernel32-UmsStubs, -# | ntdll-APC_Start_Process, ntdll-RunlevelInformationInActivationContext, server-CreateProcess_ACLs, -# | server-Misc_ACL +# | * Staging, advapi32-CreateRestrictedToken, kernel32-COMSPEC, kernel32-UmsStubs, ntdll-APC_Start_Process, ntdll- +# | RunlevelInformationInActivationContext, server-CreateProcess_ACLs, server-Misc_ACL # | # | This patchset fixes the following Wine bugs: # | * [#40613] Basic implementation for token integrity levels and UAC handling @@ -3285,8 +3233,7 @@ fi # | # | Modified files: # | * dlls/api-ms-win-core-winrt-l1-1-0/api-ms-win-core-winrt-l1-1-0.spec, dlls/api-ms-win-core-winrt-registration-l1-1-0/api- -# | ms-win-core-winrt-registration-l1-1-0.spec, dlls/combase/Makefile.in, dlls/combase/combase.spec, dlls/combase/roapi.c, -# | include/Makefile.in, include/activation.idl, include/objidl.idl, include/roapi.h +# | ms-win-core-winrt-registration-l1-1-0.spec, dlls/combase/combase.spec, dlls/combase/roapi.c, include/roapi.h # | if test "$enable_combase_RoApi" -eq 1; then patch_apply combase-RoApi/0002-include-roapi.h-Add-further-typedefs.patch @@ -3331,9 +3278,8 @@ fi # | dlls/ext-ms-win-xaml-pal-l1-1-0/ext-ms-win-xaml-pal-l1-1-0.spec, dlls/ext-ms-win-xaml-pal-l1-1-0/main.c, # | dlls/feclient/Makefile.in, dlls/feclient/feclient.spec, dlls/feclient/main.c, dlls/iertutil/Makefile.in, # | dlls/iertutil/iertutil.spec, dlls/iertutil/main.c, dlls/kernelbase/kernelbase.spec, dlls/kernelbase/main.c, -# | dlls/shcore/Makefile.in, dlls/shcore/main.c, dlls/shcore/shcore.spec, dlls/uiautomationcore/Makefile.in, -# | dlls/uiautomationcore/uia_main.c, dlls/uiautomationcore/uiautomationcore.spec, include/Makefile.in, -# | include/shellscalingapi.h, include/uiautomationcoreapi.h, tools/make_specfiles +# | dlls/uiautomationcore/Makefile.in, dlls/uiautomationcore/uia_main.c, dlls/uiautomationcore/uiautomationcore.spec, +# | include/uiautomationcoreapi.h, tools/make_specfiles # | if test "$enable_api_ms_win_Stub_DLLs" -eq 1; then patch_apply api-ms-win-Stub_DLLs/0001-kernelbase-Add-dll-and-add-stub-for-QuirkIsEnabled.patch @@ -3354,7 +3300,6 @@ if test "$enable_api_ms_win_Stub_DLLs" -eq 1; then ( printf '%s\n' '+ { "Michael Müller", "kernelbase: Add dll and add stub for QuirkIsEnabled.", 1 },'; printf '%s\n' '+ { "Michael Müller", "iertutil: Add dll and add stub for ordinal 811.", 1 },'; - printf '%s\n' '+ { "Sebastian Lackner", "shcore: Add dll.", 1 },'; printf '%s\n' '+ { "Michael Müller", "api-ms-win-shcore-obsolete-l1-1-0: Add dll.", 1 },'; printf '%s\n' '+ { "Michael Müller", "ext-ms-win-xaml-pal-l1-1-0: Add dll and add stub for XamlBehaviorEnabled.", 1 },'; printf '%s\n' '+ { "Michael Müller", "ext-ms-win-appmodel-usercontext-l1-1-0: Add dll and add stub for UserContextExtInitialize.", 1 },'; @@ -3366,9 +3311,6 @@ if test "$enable_api_ms_win_Stub_DLLs" -eq 1; then printf '%s\n' '+ { "Michael Müller", "api-ms-win-rtcore-ntuser-window-l1-1-0: Add dll.", 1 },'; printf '%s\n' '+ { "Michael Müller", "ext-ms-win-rtcore-ntuser-syscolors-l1-1-0: Add dll.", 1 },'; printf '%s\n' '+ { "Michael Müller", "api-ms-win-rtcore-ntuser-draw-l1-1-0: Add dll.", 1 },'; - printf '%s\n' '+ { "Sebastian Lackner", "shcore: Add SetProcessDpiAwareness stub.", 1 },'; - printf '%s\n' '+ { "Sebastian Lackner", "shcore: Implement stub for GetDpiForMonitor.", 1 },'; - printf '%s\n' '+ { "Sebastian Lackner", "shcore: Add stub for GetProcessDpiAwareness.", 1 },'; printf '%s\n' '+ { "Michael Müller", "feclient: Add stub dll.", 1 },'; printf '%s\n' '+ { "Michael Müller", "uiautomationcore: Add dll and stub some functions.", 1 },'; ) >> "$patchlist" @@ -3678,9 +3620,8 @@ fi # Patchset wined3d-1DTextures # | # | Modified files: -# | * dlls/d3d10core/tests/device.c, dlls/d3d11/device.c, dlls/d3d11/tests/d3d11.c, dlls/wined3d/context.c, -# | dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c, dlls/wined3d/resource.c, -# | dlls/wined3d/texture.c, dlls/wined3d/utils.c, dlls/wined3d/view.c, dlls/wined3d/wined3d_private.h, +# | * dlls/d3d11/device.c, dlls/d3d11/tests/d3d11.c, dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c, +# | dlls/wined3d/glsl_shader.c, dlls/wined3d/resource.c, dlls/wined3d/texture.c, dlls/wined3d/utils.c, dlls/wined3d/view.c, # | include/wine/wined3d.h # | if test "$enable_wined3d_1DTextures" -eq 1; then @@ -3830,10 +3771,10 @@ fi # | if test "$enable_d3d11_Depth_Bias" -eq 1; then patch_apply d3d11-Depth_Bias/0002-d3d11-tests-Add-some-basic-depth-tests.patch -# patch_apply d3d11-Depth_Bias/0003-d3d11-Implement-depth-bias-and-slope.patch -# patch_apply d3d11-Depth_Bias/0004-d3d11-Add-support-for-SlopeScaledDepthBias-in-RSSetS.patch -# patch_apply d3d11-Depth_Bias/0005-d3d11-tests-Add-basic-test-for-depth-bias-clamping.patch -# patch_apply d3d11-Depth_Bias/0006-wined3d-Add-support-for-depth-bias-clamping.patch + patch_apply d3d11-Depth_Bias/0003-d3d11-Implement-depth-bias-and-slope.patch + patch_apply d3d11-Depth_Bias/0004-d3d11-Add-support-for-SlopeScaledDepthBias-in-RSSetS.patch + patch_apply d3d11-Depth_Bias/0005-d3d11-tests-Add-basic-test-for-depth-bias-clamping.patch + patch_apply d3d11-Depth_Bias/0006-wined3d-Add-support-for-depth-bias-clamping.patch ( printf '%s\n' '+ { "Michael Müller", "d3d11/tests: Add some basic depth tests.", 1 },'; printf '%s\n' '+ { "Michael Müller", "d3d11: Implement depth bias and slope.", 1 },'; @@ -3936,12 +3877,12 @@ fi # | Modified files: # | * dlls/d3d10_1/tests/d3d10_1.c, dlls/d3d11/tests/d3d11.c, dlls/d3d9/tests/device.c, dlls/winex11.drv/opengl.c # | -#if test "$enable_d3d9_DesktopWindow" -eq 1; then -# patch_apply d3d9-DesktopWindow/0001-winex11.drv-Allow-changing-the-opengl-pixel-format-o.patch -# ( -# printf '%s\n' '+ { "Michael Müller", "winex11.drv: Allow changing the opengl pixel format on the desktop window.", 1 },'; -# ) >> "$patchlist" -#fi +if test "$enable_d3d9_DesktopWindow" -eq 1; then + patch_apply d3d9-DesktopWindow/0001-winex11.drv-Allow-changing-the-opengl-pixel-format-o.patch + ( + printf '%s\n' '+ { "Michael Müller", "winex11.drv: Allow changing the opengl pixel format on the desktop window.", 1 },'; + ) >> "$patchlist" +fi # Patchset d3d9-Tests # | @@ -4148,8 +4089,7 @@ fi # | dlls/d3dx9_28/Makefile.in, dlls/d3dx9_29/Makefile.in, dlls/d3dx9_30/Makefile.in, dlls/d3dx9_31/Makefile.in, # | dlls/d3dx9_32/Makefile.in, dlls/d3dx9_33/Makefile.in, dlls/d3dx9_34/Makefile.in, dlls/d3dx9_35/Makefile.in, # | dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/surface.c, dlls/d3dx9_36/tests/surface.c, dlls/d3dx9_37/Makefile.in, -# | dlls/d3dx9_38/Makefile.in, dlls/d3dx9_39/Makefile.in, dlls/d3dx9_40/Makefile.in, dlls/d3dx9_41/Makefile.in, -# | dlls/d3dx9_42/Makefile.in, dlls/d3dx9_43/Makefile.in +# | dlls/d3dx9_38/Makefile.in, dlls/d3dx9_39/Makefile.in, dlls/d3dx9_40/Makefile.in # | if test "$enable_d3dx9_36_DXTn" -eq 1; then patch_apply d3dx9_36-DXTn/0001-d3dx9_36-Add-dxtn-support.patch @@ -5911,25 +5851,10 @@ if test "$enable_ntdll_ApiSetQueryApiSetPresence" -eq 1; then ) >> "$patchlist" fi -# Patchset ntdll-Attach_Process_DLLs -# | -# | This patchset fixes the following Wine bugs: -# | * [#40714] Ensure process_attach callbacks are not executed too early -# | -# | Modified files: -# | * dlls/ntdll/loader.c -# | -if test "$enable_ntdll_Attach_Process_DLLs" -eq 1; then - patch_apply ntdll-Attach_Process_DLLs/0001-ntdll-Ensure-process-dlls-are-not-attached-too-early.patch - ( - printf '%s\n' '+ { "Sebastian Lackner", "ntdll: Ensure process dlls are not attached too early.", 2 },'; - ) >> "$patchlist" -fi - # Patchset ntdll-Hide_Wine_Exports # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime +# | * ntdll-ThreadTime # | # | This patchset fixes the following Wine bugs: # | * [#38656] Add support for hiding wine version information from applications @@ -5947,7 +5872,7 @@ fi # Patchset ntdll-x86_64_ExceptionInformation # | # | Modified files: -# | * dlls/ntdll/signal_x86_64.c, dlls/ntdll/virtual.c +# | * dlls/ntdll/signal_x86_64.c # | if test "$enable_ntdll_x86_64_ExceptionInformation" -eq 1; then patch_apply ntdll-x86_64_ExceptionInformation/0001-ntdll-Set-proper-ExceptionInformation-0-for-x86_64-e.patch @@ -5956,7 +5881,6 @@ if test "$enable_ntdll_x86_64_ExceptionInformation" -eq 1; then patch_apply ntdll-x86_64_ExceptionInformation/0005-ntdll-Handle-interrupt-0x2c-on-x86_64.patch ( printf '%s\n' '+ { "Sebastian Lackner", "ntdll: Set proper ExceptionInformation[0] for x86_64 exceptions.", 1 },'; - printf '%s\n' '+ { "Sebastian Lackner", "ntdll: Avoid crash when trying to access page prot of address beyond address space limit.", 1 },'; printf '%s\n' '+ { "Michael Müller", "ntdll: Translate icebp instruction to EXCEPTION_SINGLE_STEP on x64.", 1 },'; printf '%s\n' '+ { "Sebastian Lackner", "ntdll: Correctly handle privileged instructions on x86_64.", 1 },'; printf '%s\n' '+ { "Andrew Wesie", "ntdll: Handle interrupt 0x2c on x86_64.", 1 },'; @@ -5966,7 +5890,7 @@ fi # Patchset ntdll-User_Shared_Data # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation +# | * ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation # | # | This patchset fixes the following Wine bugs: # | * [#29168] Update user shared data at realtime @@ -5991,8 +5915,7 @@ fi # Patchset ntdll-Builtin_Prot # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll- -# | User_Shared_Data +# | * ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll-User_Shared_Data # | # | Modified files: # | * dlls/ntdll/virtual.c, dlls/psapi/tests/psapi_main.c @@ -6139,7 +6062,7 @@ fi # Patchset ntdll-DllRedirects # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type +# | * ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type # | # | Modified files: # | * dlls/ntdll/loader.c, dlls/ntdll/loadorder.c, dlls/ntdll/ntdll_misc.h @@ -6354,7 +6277,7 @@ fi # | # | This patchset has the following (direct or indirect) dependencies: # | * mscoree-CorValidateImage, ntdll-APC_Start_Process, ntdll-CLI_Images, ntdll-LDR_MODULE, ntdll-HashLinks, ntdll- -# | Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-RtlQueryPackageIdentity +# | ThreadTime, ntdll-Hide_Wine_Exports, ntdll-RtlQueryPackageIdentity # | # | Modified files: # | * dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, dlls/ntdll/tests/rtl.c, include/winternl.h @@ -6579,7 +6502,7 @@ fi # Patchset ntdll-Purist_Mode # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects +# | * ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects # | # | Modified files: # | * dlls/ntdll/loadorder.c @@ -6672,8 +6595,7 @@ fi # Patchset ntdll-WRITECOPY # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll- -# | User_Shared_Data +# | * ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll-User_Shared_Data # | # | This patchset fixes the following Wine bugs: # | * [#29384] Voobly expects correct handling of WRITECOPY memory protection @@ -6700,8 +6622,7 @@ fi # Patchset ntdll-Signal_Handler # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll- -# | User_Shared_Data, ntdll-WRITECOPY +# | * ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll-User_Shared_Data, ntdll-WRITECOPY # | # | Modified files: # | * dlls/ntdll/signal_i386.c @@ -7309,18 +7230,6 @@ if test "$enable_quartz_Silence_FIXMEs" -eq 1; then ) >> "$patchlist" fi -# Patchset rasapi32-RasGetConnectionStatistics -# | -# | Modified files: -# | * dlls/rasapi32/rasapi.c, dlls/rasapi32/rasapi32.spec, include/raserror.h -# | -if test "$enable_rasapi32_RasGetConnectionStatistics" -eq 1; then - patch_apply rasapi32-RasGetConnectionStatistics/0001-rasapi32-Add-stub-for-RasGetConnectionStatistics.patch - ( - printf '%s\n' '+ { "Stanislav Motylkov", "rasapi32: Add stub for RasGetConnectionStatistics.", 1 },'; - ) >> "$patchlist" -fi - # Patchset riched20-Class_Tests # | # | Modified files: @@ -8504,21 +8413,6 @@ if test "$enable_user32_Groupbox_Rectangle" -eq 1; then ) >> "$patchlist" fi -# Patchset user32-Invalidate_Key_State -# | -# | This patchset fixes the following Wine bugs: -# | * [#29871] Globally invalidate key state on changes in other threads -# | -# | Modified files: -# | * dlls/user32/input.c -# | -if test "$enable_user32_Invalidate_Key_State" -eq 1; then - patch_apply user32-Invalidate_Key_State/0001-user32-Globally-invalidate-key-state-on-changes-in-o.patch - ( - printf '%s\n' '+ { "Sebastian Lackner", "user32: Globally invalidate key state on changes in other threads.", 1 },'; - ) >> "$patchlist" -fi - # Patchset user32-LR_LOADFROMFILE # | # | This patchset fixes the following Wine bugs: @@ -8640,21 +8534,6 @@ if test "$enable_user32_Refresh_MDI_Menus" -eq 1; then ) >> "$patchlist" fi -# Patchset user32-Revert_ListBox_Height -# | -# | This patchset fixes the following Wine bugs: -# | * [#43643] Revert patch to fix listbox popup height -# | -# | Modified files: -# | * dlls/user32/combo.c, dlls/user32/tests/combo.c -# | -if test "$enable_user32_Revert_ListBox_Height" -eq 1; then - patch_apply user32-Revert_ListBox_Height/0001-Revert-user32-combo-Set-listbox-popup-height-correct.patch - ( - printf '%s\n' '+ { "Sebastian Lackner", "Revert \"user32/combo: Set listbox popup height correctly and add tests.\".", 1 },'; - ) >> "$patchlist" -fi - # Patchset user32-ScrollWindowEx # | # | This patchset fixes the following Wine bugs: @@ -8760,7 +8639,7 @@ fi # Patchset uxtheme-GTK_Theming # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects +# | * ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects # | # | Modified files: # | * aclocal.m4, configure.ac, dlls/uxtheme-gtk/Makefile.in, dlls/uxtheme-gtk/button.c, dlls/uxtheme-gtk/combobox.c, dlls @@ -8927,28 +8806,11 @@ if test "$enable_wbemprox_Win32_VideoController" -eq 1; then patch_apply wbemprox-Win32_VideoController/0002-wbemprox-Add-Status-for-Win32_VideoController.patch patch_apply wbemprox-Win32_VideoController/0003-wbemprox-Add-InstalledDisplayDrivers-for-Win32_Video.patch patch_apply wbemprox-Win32_VideoController/0004-wbemprox-Add-DriverDate-for-Win32_VideoController.patch - patch_apply wbemprox-Win32_VideoController/0005-wbemprox-Add-Vendor-field-in-Win32_ComputerSystemPro.patch ( printf '%s\n' '+ { "Michael Müller", "wbemprox: Add ConfigManagerErrorCode for Win32_VideoController.", 1 },'; printf '%s\n' '+ { "Michael Müller", "wbemprox: Add Status for Win32_VideoController.", 1 },'; printf '%s\n' '+ { "Michael Müller", "wbemprox: Add InstalledDisplayDrivers for Win32_VideoController.", 1 },'; printf '%s\n' '+ { "Michael Müller", "wbemprox: Add DriverDate for Win32_VideoController.", 1 },'; - printf '%s\n' '+ { "Michael Müller", "wbemprox: Add Vendor field in Win32_ComputerSystemProduct.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset wevtapi-EvtNext -# | -# | This patchset fixes the following Wine bugs: -# | * [#42170] Add stub for wevtapi.EvtNext -# | -# | Modified files: -# | * dlls/wevtapi/main.c, dlls/wevtapi/wevtapi.spec -# | -if test "$enable_wevtapi_EvtNext" -eq 1; then - patch_apply wevtapi-EvtNext/0001-wevtapi-Add-stub-for-EvtNext.patch - ( - printf '%s\n' '+ { "Michael Müller", "wevtapi: Add stub for EvtNext.", 1 },'; ) >> "$patchlist" fi @@ -9332,8 +9194,7 @@ fi # Patchset winebuild-Fake_Dlls # | # | This patchset has the following (direct or indirect) dependencies: -# | * ntdll-Attach_Process_DLLs, ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll- -# | User_Shared_Data +# | * ntdll-ThreadTime, ntdll-Hide_Wine_Exports, ntdll-x86_64_ExceptionInformation, ntdll-User_Shared_Data # | # | This patchset fixes the following Wine bugs: # | * [#42741] Various improvements for fake dlls @@ -9543,18 +9404,6 @@ if test "$enable_wined3d_QUERY_Stubs" -eq 1; then ) >> "$patchlist" fi -# Patchset wined3d-Revert_Buffer_Upload -# | -# | Modified files: -# | * dlls/wined3d/buffer.c, dlls/wined3d/cs.c, dlls/wined3d/wined3d_private.h -# | -if test "$enable_wined3d_Revert_Buffer_Upload" -eq 1; then - patch_apply wined3d-Revert_Buffer_Upload/0001-Revert-wined3d-Implement-wined3d_buffer_upload_data-.patch - ( - printf '%s\n' '+ { "Sebastian Lackner", "Revert \"wined3d: Implement wined3d_buffer_upload_data() on top of wined3d_buffer_upload_ranges().\".", 1 },'; - ) >> "$patchlist" -fi - # Patchset wined3d-Silence_FIXMEs # | # | Modified files: @@ -9588,11 +9437,10 @@ fi # Patchset wined3d-CSMT_Helper # | # | This patchset has the following (direct or indirect) dependencies: -# | * wined3d-1DTextures, d3d11-Deferred_Context, d3d9-Tests, makedep-PARENTSPEC, ntdll- -# | Attach_Process_DLLs, ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects, wined3d-Accounting, -# | d3d11-Depth_Bias, wined3d-Copy_Resource_Typeless, wined3d-DXTn, wined3d-Core_Context, wined3d-Viewports, wined3d- -# | Dual_Source_Blending, wined3d-GenerateMips, wined3d-QUERY_Stubs, wined3d-Revert_Buffer_Upload, wined3d-Silence_FIXMEs, -# | wined3d-UAV_Counters +# | * wined3d-1DTextures, d3d11-Deferred_Context, d3d9-Tests, makedep-PARENTSPEC, ntdll-DllOverrides_WOW64, ntdll- +# | Loader_Machine_Type, ntdll-DllRedirects, wined3d-Accounting, d3d11-Depth_Bias, wined3d-Copy_Resource_Typeless, wined3d- +# | DXTn, wined3d-Core_Context, wined3d-Viewports, wined3d-Dual_Source_Blending, wined3d-GenerateMips, wined3d-QUERY_Stubs, +# | wined3d-Silence_FIXMEs, wined3d-UAV_Counters # | # | Modified files: # | * configure.ac, dlls/wined3d-csmt/Makefile.in, dlls/wined3d-csmt/version.rc @@ -9768,11 +9616,10 @@ fi # Patchset wined3d-CSMT_Main # | # | This patchset has the following (direct or indirect) dependencies: -# | * wined3d-1DTextures, d3d11-Deferred_Context, d3d9-Tests, makedep-PARENTSPEC, ntdll- -# | Attach_Process_DLLs, ntdll-DllOverrides_WOW64, ntdll-Loader_Machine_Type, ntdll-DllRedirects, wined3d-Accounting, -# | d3d11-Depth_Bias, wined3d-Copy_Resource_Typeless, wined3d-DXTn, wined3d-Core_Context, wined3d-Viewports, wined3d- -# | Dual_Source_Blending, wined3d-GenerateMips, wined3d-QUERY_Stubs, wined3d-Revert_Buffer_Upload, wined3d-Silence_FIXMEs, -# | wined3d-UAV_Counters, wined3d-CSMT_Helper +# | * wined3d-1DTextures, d3d11-Deferred_Context, d3d9-Tests, makedep-PARENTSPEC, ntdll-DllOverrides_WOW64, ntdll- +# | Loader_Machine_Type, ntdll-DllRedirects, wined3d-Accounting, d3d11-Depth_Bias, wined3d-Copy_Resource_Typeless, wined3d- +# | DXTn, wined3d-Core_Context, wined3d-Viewports, wined3d-Dual_Source_Blending, wined3d-GenerateMips, wined3d-QUERY_Stubs, +# | wined3d-Silence_FIXMEs, wined3d-UAV_Counters, wined3d-CSMT_Helper # | # | This patchset fixes the following Wine bugs: # | * [#11674] Support for CSMT (command stream) to increase graphic performance diff --git a/patches/rasapi32-RasGetConnectionStatistics/0001-rasapi32-Add-stub-for-RasGetConnectionStatistics.patch b/patches/rasapi32-RasGetConnectionStatistics/0001-rasapi32-Add-stub-for-RasGetConnectionStatistics.patch deleted file mode 100644 index 838fe48e..00000000 --- a/patches/rasapi32-RasGetConnectionStatistics/0001-rasapi32-Add-stub-for-RasGetConnectionStatistics.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 8cb902b407afef95cac06fbc52c42d5e481a610a Mon Sep 17 00:00:00 2001 -From: Stanislav Motylkov -Date: Wed, 4 Oct 2017 23:46:35 +0300 -Subject: rasapi32: Add stub for RasGetConnectionStatistics - ---- - dlls/rasapi32/rasapi.c | 6 ++++++ - dlls/rasapi32/rasapi32.spec | 1 + - include/raserror.h | 1 + - 3 files changed, 8 insertions(+) - -diff --git a/dlls/rasapi32/rasapi.c b/dlls/rasapi32/rasapi.c -index b1721c61752..791b0dab133 100644 ---- a/dlls/rasapi32/rasapi.c -+++ b/dlls/rasapi32/rasapi.c -@@ -547,3 +547,9 @@ DWORD WINAPI RasGetLinkStatistics(HRASCONN connection, DWORD entry, RAS_STATS *s - FIXME("(%p,%u,%p), stub!\n", connection, entry, statistics); - return 0; - } -+ -+DWORD WINAPI RasGetConnectionStatistics(HRASCONN connection, RAS_STATS *statistics) -+{ -+ FIXME("(%p,%p), stub!\n", connection, statistics); -+ return ERROR_UNKNOWN; -+} -diff --git a/dlls/rasapi32/rasapi32.spec b/dlls/rasapi32/rasapi32.spec -index 66b21a657cc..48d7a73dc87 100644 ---- a/dlls/rasapi32/rasapi32.spec -+++ b/dlls/rasapi32/rasapi32.spec -@@ -29,6 +29,7 @@ - @ stdcall RasGetAutodialEnableW(long ptr) - @ stdcall RasGetAutodialParamA(long ptr ptr) - @ stdcall RasGetAutodialParamW(long ptr ptr) -+@ stdcall RasGetConnectionStatistics(ptr ptr) - @ stub RasGetConnectResponse - @ stdcall RasGetConnectStatusA(ptr ptr) - @ stdcall RasGetConnectStatusW(ptr ptr) -diff --git a/include/raserror.h b/include/raserror.h -index 17359368780..549b42423cf 100644 ---- a/include/raserror.h -+++ b/include/raserror.h -@@ -23,6 +23,7 @@ - #define ERROR_BUFFER_TOO_SMALL (RASBASE+3) - #define ERROR_BUFFER_INVALID (RASBASE+10) - #define ERROR_INVALID_SIZE (RASBASE+32) -+#define ERROR_UNKNOWN (RASBASE+35) - #define ERROR_STATE_MACHINES_NOT_STARTED (RASBASE+95) - #define ERROR_RASMAN_CANNOT_INITIALIZE (RASBASE+111) - --- -2.14.1 - diff --git a/patches/rasapi32-RasGetConnectionStatistics/definition b/patches/rasapi32-RasGetConnectionStatistics/definition deleted file mode 100644 index e0a713da..00000000 --- a/patches/rasapi32-RasGetConnectionStatistics/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: Implement stub for rasapi32.RasGetConnectionStatistics diff --git a/patches/server-Pipe_ObjectName/0001-server-Store-a-reference-to-the-parent-object-for-pi.patch b/patches/server-Pipe_ObjectName/0001-server-Store-a-reference-to-the-parent-object-for-pi.patch index ccb559b4..633d0206 100644 --- a/patches/server-Pipe_ObjectName/0001-server-Store-a-reference-to-the-parent-object-for-pi.patch +++ b/patches/server-Pipe_ObjectName/0001-server-Store-a-reference-to-the-parent-object-for-pi.patch @@ -1,7 +1,8 @@ -From b31cd243e2a02b730e31bde59093afc92b9dcf52 Mon Sep 17 00:00:00 2001 +From aea2466a7e48d05a176fcd29f68035b15a7a23b7 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 17 Aug 2015 01:11:47 +0200 -Subject: server: Store a reference to the parent object for pipe servers. (v2) +Subject: [PATCH] server: Store a reference to the parent object for pipe + servers. (v2) --- dlls/ntdll/tests/om.c | 3 --- @@ -11,7 +12,7 @@ Subject: server: Store a reference to the parent object for pipe servers. (v2) 4 files changed, 52 insertions(+), 19 deletions(-) diff --git a/dlls/ntdll/tests/om.c b/dlls/ntdll/tests/om.c -index 43c5ee46d71..9a1ba670ab7 100644 +index 43c5ee4..9a1ba67 100644 --- a/dlls/ntdll/tests/om.c +++ b/dlls/ntdll/tests/om.c @@ -1487,14 +1487,11 @@ static void test_query_object(void) @@ -30,18 +31,18 @@ index 43c5ee46d71..9a1ba670ab7 100644 "name too short %s\n", wine_dbgstr_w(str->Buffer) ); trace( "got %s len %u\n", wine_dbgstr_w(str->Buffer), len ); diff --git a/server/named_pipe.c b/server/named_pipe.c -index 58f68227f2d..c52a083df9a 100644 +index c6b37ce..825216e 100644 --- a/server/named_pipe.c +++ b/server/named_pipe.c -@@ -152,6 +152,8 @@ static void pipe_end_reselect_async( struct fd *fd, struct async_queue *queue ); +@@ -151,6 +151,8 @@ static void pipe_end_reselect_async( struct fd *fd, struct async_queue *queue ); /* server end functions */ static void pipe_server_dump( struct object *obj, int verbose ); static void pipe_server_destroy( struct object *obj); +static int pipe_server_link_name( struct object *obj, struct object_name *name, struct object *parent ); +static void pipe_server_unlink_name( struct object *obj, struct object_name *name ); static int pipe_server_ioctl( struct fd *fd, ioctl_code_t code, struct async *async ); + static void pipe_server_get_file_info( struct fd *fd, unsigned int info_class ); - static const struct object_ops pipe_server_ops = @@ -169,8 +171,8 @@ static const struct object_ops pipe_server_ops = default_get_sd, /* get_sd */ default_set_sd, /* set_sd */ @@ -51,17 +52,17 @@ index 58f68227f2d..c52a083df9a 100644 + pipe_server_link_name, /* link_name */ + pipe_server_unlink_name, /* unlink_name */ no_open_file, /* open_file */ - no_alloc_handle, /* alloc_handle */ fd_close_handle, /* close_handle */ -@@ -194,6 +196,8 @@ static const struct fd_ops pipe_server_fd_ops = + pipe_server_destroy /* destroy */ +@@ -193,6 +195,8 @@ static const struct fd_ops pipe_server_fd_ops = + /* client end functions */ static void pipe_client_dump( struct object *obj, int verbose ); - static int pipe_client_signaled( struct object *obj, struct wait_queue_entry *entry ); +static int pipe_client_link_name( struct object *obj, struct object_name *name, struct object *parent ); +static void pipe_client_unlink_name( struct object *obj, struct object_name *name ); static void pipe_client_destroy( struct object *obj ); static int pipe_client_ioctl( struct fd *fd, ioctl_code_t code, struct async *async ); - + static void pipe_client_get_file_info( struct fd *fd, unsigned int info_class ); @@ -212,8 +216,8 @@ static const struct object_ops pipe_client_ops = default_get_sd, /* get_sd */ default_set_sd, /* set_sd */ @@ -71,9 +72,9 @@ index 58f68227f2d..c52a083df9a 100644 + pipe_client_link_name, /* link_name */ + pipe_client_unlink_name, /* unlink_name */ no_open_file, /* open_file */ - no_alloc_handle, /* alloc_handle */ fd_close_handle, /* close_handle */ -@@ -416,6 +420,17 @@ static void pipe_end_destroy( struct pipe_end *pipe_end ) + pipe_client_destroy /* destroy */ +@@ -409,6 +413,17 @@ static void pipe_end_destroy( struct pipe_end *pipe_end ) if (pipe_end->fd) release_object( pipe_end->fd ); } @@ -91,7 +92,7 @@ index 58f68227f2d..c52a083df9a 100644 static void pipe_server_destroy( struct object *obj) { struct pipe_server *server = (struct pipe_server *)obj; -@@ -438,6 +453,17 @@ static void pipe_server_destroy( struct object *obj) +@@ -431,6 +446,17 @@ static void pipe_server_destroy( struct object *obj) release_object( server->pipe ); } @@ -109,7 +110,7 @@ index 58f68227f2d..c52a083df9a 100644 static void pipe_client_destroy( struct object *obj) { struct pipe_client *client = (struct pipe_client *)obj; -@@ -910,9 +936,10 @@ static void init_pipe_end( struct pipe_end *pipe_end, unsigned int pipe_flags, d +@@ -956,9 +982,10 @@ static void init_pipe_end( struct pipe_end *pipe_end, unsigned int pipe_flags, d static struct pipe_server *create_pipe_server( struct named_pipe *pipe, unsigned int options, unsigned int pipe_flags ) { @@ -121,7 +122,7 @@ index 58f68227f2d..c52a083df9a 100644 if (!server) return NULL; -@@ -933,12 +960,13 @@ static struct pipe_server *create_pipe_server( struct named_pipe *pipe, unsigned +@@ -979,12 +1006,13 @@ static struct pipe_server *create_pipe_server( struct named_pipe *pipe, unsigned return server; } @@ -137,7 +138,7 @@ index 58f68227f2d..c52a083df9a 100644 if (!client) return NULL; -@@ -1016,7 +1044,7 @@ static struct object *named_pipe_open_file( struct object *obj, unsigned int acc +@@ -1062,7 +1090,7 @@ static struct object *named_pipe_open_file( struct object *obj, unsigned int acc return NULL; } @@ -147,7 +148,7 @@ index 58f68227f2d..c52a083df9a 100644 set_no_fd_status( server->pipe_end.fd, STATUS_BAD_DEVICE_TYPE ); allow_fd_caching( server->pipe_end.fd ); diff --git a/server/object.c b/server/object.c -index 14cd38e6f7e..77772a8e38b 100644 +index 4455718..81f8d1b 100644 --- a/server/object.c +++ b/server/object.c @@ -176,7 +176,7 @@ WCHAR *get_object_full_name( struct object *obj, data_size_t *ret_len ) @@ -201,10 +202,10 @@ index 14cd38e6f7e..77772a8e38b 100644 /* dump the name of an object to stderr */ diff --git a/server/object.h b/server/object.h -index 72ad8528c5a..ddb4410525b 100644 +index b5c50e1..258a5e7 100644 --- a/server/object.h +++ b/server/object.h -@@ -135,6 +135,8 @@ extern WCHAR *get_object_full_name( struct object *obj, data_size_t *ret_len ); +@@ -133,6 +133,8 @@ extern WCHAR *get_object_full_name( struct object *obj, data_size_t *ret_len ); extern void dump_object_name( struct object *obj ); extern struct object *lookup_named_object( struct object *root, const struct unicode_str *name, unsigned int attr, struct unicode_str *name_left ); @@ -214,5 +215,5 @@ index 72ad8528c5a..ddb4410525b 100644 const struct unicode_str *name, unsigned int attributes, const struct security_descriptor *sd ); -- -2.14.1 +2.7.4 diff --git a/patches/shell32-Context_Menu/0003-shell32-Implement-insert-paste-for-item-context-menu.patch b/patches/shell32-Context_Menu/0003-shell32-Implement-insert-paste-for-item-context-menu.patch index c6673377..8ad94f62 100644 --- a/patches/shell32-Context_Menu/0003-shell32-Implement-insert-paste-for-item-context-menu.patch +++ b/patches/shell32-Context_Menu/0003-shell32-Implement-insert-paste-for-item-context-menu.patch @@ -1,15 +1,15 @@ -From f378913d8cb2e40abb4e24d4bfaf0cbe7ea8134a Mon Sep 17 00:00:00 2001 +From 103583fcc07412ede80a00edc1f07a9d0ada28e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 2 Apr 2016 01:39:40 +0200 -Subject: shell32: Implement insert/paste for item context menus. +Subject: [PATCH 3/7] shell32: Implement insert/paste for item context menus. --- dlls/shell32/shell32.rc | 1 + - dlls/shell32/shlview_cmenu.c | 68 +++++++++++++++++++++++++++++++++++++++----- - 2 files changed, 62 insertions(+), 7 deletions(-) + dlls/shell32/shlview_cmenu.c | 64 +++++++++++++++++++++++++++++++++++++++----- + 2 files changed, 58 insertions(+), 7 deletions(-) diff --git a/dlls/shell32/shell32.rc b/dlls/shell32/shell32.rc -index bfba962..4f2015b 100644 +index 6585416..0c75786 100644 --- a/dlls/shell32/shell32.rc +++ b/dlls/shell32/shell32.rc @@ -99,6 +99,7 @@ BEGIN @@ -21,7 +21,7 @@ index bfba962..4f2015b 100644 MENUITEM "Create &Link", FCIDM_SHVIEW_CREATELINK MENUITEM "&Delete", FCIDM_SHVIEW_DELETE diff --git a/dlls/shell32/shlview_cmenu.c b/dlls/shell32/shlview_cmenu.c -index 7ce6cd9..d972922 100644 +index 677bb3f..0394da3 100644 --- a/dlls/shell32/shlview_cmenu.c +++ b/dlls/shell32/shlview_cmenu.c @@ -59,6 +59,8 @@ typedef struct @@ -113,29 +113,25 @@ index 7ce6cd9..d972922 100644 case FCIDM_SHVIEW_PROPERTIES: TRACE("Verb FCIDM_SHVIEW_PROPERTIES\n"); DoOpenProperties(This, lpcmi->hwnd); -@@ -510,6 +542,10 @@ static HRESULT WINAPI ItemMenu_GetCommandString( - strcpy(lpszName, "copy"); - hr = S_OK; - break; -+ case FCIDM_SHVIEW_INSERT: -+ strcpy(lpszName, "paste"); -+ hr = S_OK; -+ break; - case FCIDM_SHVIEW_CREATELINK: - strcpy(lpszName, "link"); - hr = S_OK; -@@ -550,6 +586,10 @@ static HRESULT WINAPI ItemMenu_GetCommandString( - MultiByteToWideChar(CP_ACP, 0, "copy", -1, (LPWSTR)lpszName, uMaxNameLen); - hr = S_OK; - break; -+ case FCIDM_SHVIEW_INSERT: -+ MultiByteToWideChar(CP_ACP, 0, "paste", -1, (LPWSTR)lpszName, uMaxNameLen); -+ hr = S_OK; -+ break; - case FCIDM_SHVIEW_CREATELINK: - MultiByteToWideChar(CP_ACP, 0, "link", -1, (LPWSTR)lpszName, uMaxNameLen); - hr = S_OK; -@@ -757,8 +797,22 @@ static BOOL DoPaste(ContextMenu *This) +@@ -478,6 +510,7 @@ static HRESULT WINAPI ItemMenu_GetCommandString(IContextMenu3 *iface, UINT_PTR c + static const WCHAR exploreW[] = {'e','x','p','l','o','r','e',0}; + static const WCHAR cutW[] = {'c','u','t',0}; + static const WCHAR copyW[] = {'c','o','p','y',0}; ++ static const WCHAR pasteW[] = {'p','a','s','t','e',0}; + static const WCHAR linkW[] = {'l','i','n','k',0}; + static const WCHAR deleteW[] = {'d','e','l','e','t','e',0}; + static const WCHAR propertiesW[] = {'p','r','o','p','e','r','t','i','e','s',0}; +@@ -511,6 +544,9 @@ static HRESULT WINAPI ItemMenu_GetCommandString(IContextMenu3 *iface, UINT_PTR c + case FCIDM_SHVIEW_COPY: + cmdW = copyW; + break; ++ case FCIDM_SHVIEW_INSERT: ++ cmdW = pasteW; ++ break; + case FCIDM_SHVIEW_CREATELINK: + cmdW = linkW; + break; +@@ -726,8 +762,22 @@ static BOOL DoPaste(ContextMenu *This) if (psfFrom) { /* get source and destination shellfolder */ @@ -161,5 +157,5 @@ index 7ce6cd9..d972922 100644 /* do the copy/move */ -- -2.7.1 +2.7.4 diff --git a/patches/user32-Invalidate_Key_State/0001-user32-Globally-invalidate-key-state-on-changes-in-o.patch b/patches/user32-Invalidate_Key_State/0001-user32-Globally-invalidate-key-state-on-changes-in-o.patch deleted file mode 100644 index 21682f7f..00000000 --- a/patches/user32-Invalidate_Key_State/0001-user32-Globally-invalidate-key-state-on-changes-in-o.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 6ef2ab6c2318d4fb15220891ce16768e84354a88 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Tue, 16 Jun 2015 02:56:25 +0200 -Subject: user32: Globally invalidate key state on changes in other threads. - ---- - dlls/user32/input.c | 14 ++++++++++++-- - 1 file changed, 12 insertions(+), 2 deletions(-) - -diff --git a/dlls/user32/input.c b/dlls/user32/input.c -index 40e35a9..95f3c2f 100644 ---- a/dlls/user32/input.c -+++ b/dlls/user32/input.c -@@ -371,6 +371,7 @@ SHORT WINAPI DECLSPEC_HOTPATCH GetAsyncKeyState( INT key ) - { - struct user_key_state_info *key_state_info = get_user_thread_info()->key_state; - INT counter = global_key_state_counter; -+ BYTE prev_key_state; - SHORT ret; - - if (key < 0 || key >= 256) return 0; -@@ -398,14 +399,23 @@ SHORT WINAPI DECLSPEC_HOTPATCH GetAsyncKeyState( INT key ) - { - req->tid = 0; - req->key = key; -- if (key_state_info) wine_server_set_reply( req, key_state_info->state, -- sizeof(key_state_info->state) ); -+ if (key_state_info) -+ { -+ prev_key_state = key_state_info->state[key]; -+ wine_server_set_reply( req, key_state_info->state, sizeof(key_state_info->state) ); -+ } - if (!wine_server_call( req )) - { - if (reply->state & 0x40) ret |= 0x0001; - if (reply->state & 0x80) ret |= 0x8000; - if (key_state_info) - { -+ /* force refreshing the key state cache - some multithreaded programs -+ * (like Adobe Photoshop CS5) expect that changes to the async key state -+ * are also immediately available in other threads. */ -+ if (prev_key_state != key_state_info->state[key]) -+ counter = interlocked_xchg_add( &global_key_state_counter, 1 ) + 1; -+ - key_state_info->time = GetTickCount(); - key_state_info->counter = counter; - } --- -2.4.3 - diff --git a/patches/user32-Invalidate_Key_State/definition b/patches/user32-Invalidate_Key_State/definition deleted file mode 100644 index 975f6b0e..00000000 --- a/patches/user32-Invalidate_Key_State/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [29871] Globally invalidate key state on changes in other threads diff --git a/patches/user32-Revert_ListBox_Height/0001-Revert-user32-combo-Set-listbox-popup-height-correct.patch b/patches/user32-Revert_ListBox_Height/0001-Revert-user32-combo-Set-listbox-popup-height-correct.patch deleted file mode 100644 index 5bbb7c85..00000000 --- a/patches/user32-Revert_ListBox_Height/0001-Revert-user32-combo-Set-listbox-popup-height-correct.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 58357b49f12f724bb9e2444f7cb193e3d2983ce2 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Mon, 4 Sep 2017 01:35:03 +0200 -Subject: Revert "user32/combo: Set listbox popup height correctly and add - tests." - -This reverts commit f7f7b89e2e9117811c91269643868c6d063db5e9. ---- - dlls/user32/combo.c | 8 ++++++++ - dlls/user32/tests/combo.c | 20 ++++++++++---------- - 2 files changed, 18 insertions(+), 10 deletions(-) - -diff --git a/dlls/user32/combo.c b/dlls/user32/combo.c -index 79103160cfa..501bfe80b7e 100644 ---- a/dlls/user32/combo.c -+++ b/dlls/user32/combo.c -@@ -1033,6 +1033,14 @@ static void CBDropDown( LPHEADCOMBO lphc ) - - if (nHeight < nDroppedHeight - COMBO_YBORDERSIZE()) - nDroppedHeight = nHeight + COMBO_YBORDERSIZE(); -+ -+ if (nDroppedHeight < nHeight) -+ { -+ if (nItems < 5) -+ nDroppedHeight = (nItems+1)*nIHeight; -+ else if (nDroppedHeight < 6*nIHeight) -+ nDroppedHeight = 6*nIHeight; -+ } - } - - r.left = rect.left; -diff --git a/dlls/user32/tests/combo.c b/dlls/user32/tests/combo.c -index 03fc412e418..1a67611905e 100644 ---- a/dlls/user32/tests/combo.c -+++ b/dlls/user32/tests/combo.c -@@ -718,25 +718,25 @@ static void test_listbox_size(DWORD style) - int height_combo; - BOOL todo; - } info_height[] = { -- {2, 24}, -+ {2, 24, TRUE}, - {2, 41, TRUE}, -- {2, 42}, -- {2, 50}, -+ {2, 42, TRUE}, -+ {2, 50, TRUE}, - {2, 60}, - {2, 80}, - {2, 89}, - {2, 90}, - {2, 100}, - -- {10, 24}, -+ {10, 24, TRUE}, - {10, 41, TRUE}, -- {10, 42}, -- {10, 50}, -- {10, 60}, -- {10, 80}, -+ {10, 42, TRUE}, -+ {10, 50, TRUE}, -+ {10, 60, TRUE}, -+ {10, 80, TRUE}, - {10, 89, TRUE}, -- {10, 90}, -- {10, 100}, -+ {10, 90, TRUE}, -+ {10, 100, TRUE}, - }; - - pGetComboBoxInfo = (void *)GetProcAddress(GetModuleHandleA("user32.dll"), "GetComboBoxInfo"); --- -2.14.1 - diff --git a/patches/user32-Revert_ListBox_Height/definition b/patches/user32-Revert_ListBox_Height/definition deleted file mode 100644 index adf10781..00000000 --- a/patches/user32-Revert_ListBox_Height/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [43643] Revert patch to fix listbox popup height diff --git a/patches/user32-WindowDisplayAffinity/0001-user32-Add-stubs-for-GetWindowDisplayAffinity-and-Se.patch b/patches/user32-WindowDisplayAffinity/0001-user32-Add-stubs-for-GetWindowDisplayAffinity-and-Se.patch index 90d3615d..332fae96 100644 --- a/patches/user32-WindowDisplayAffinity/0001-user32-Add-stubs-for-GetWindowDisplayAffinity-and-Se.patch +++ b/patches/user32-WindowDisplayAffinity/0001-user32-Add-stubs-for-GetWindowDisplayAffinity-and-Se.patch @@ -1,7 +1,7 @@ -From 33a1f4fe6cd08f88acd01d413d0a2d490bd304d1 Mon Sep 17 00:00:00 2001 +From aec88fa96675ae6c4b3475167b21a0e3afbc5f88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sun, 13 Aug 2017 02:09:51 +0200 -Subject: user32: Add stubs for GetWindowDisplayAffinity and +Subject: [PATCH] user32: Add stubs for GetWindowDisplayAffinity and SetWindowDisplayAffinity. --- @@ -14,7 +14,7 @@ Subject: user32: Add stubs for GetWindowDisplayAffinity and 6 files changed, 132 insertions(+), 4 deletions(-) diff --git a/dlls/ext-ms-win-ntuser-uicontext-ext-l1-1-0/ext-ms-win-ntuser-uicontext-ext-l1-1-0.spec b/dlls/ext-ms-win-ntuser-uicontext-ext-l1-1-0/ext-ms-win-ntuser-uicontext-ext-l1-1-0.spec -index 4b563ffddb7..ea155c098d9 100644 +index 4b563ff..ea155c0 100644 --- a/dlls/ext-ms-win-ntuser-uicontext-ext-l1-1-0/ext-ms-win-ntuser-uicontext-ext-l1-1-0.spec +++ b/dlls/ext-ms-win-ntuser-uicontext-ext-l1-1-0/ext-ms-win-ntuser-uicontext-ext-l1-1-0.spec @@ -24,7 +24,7 @@ @@ -36,7 +36,7 @@ index 4b563ffddb7..ea155c098d9 100644 @ stdcall SetWindowTextW(long wstr) user32.SetWindowTextW @ stdcall SetWindowsHookExW(long long long long) user32.SetWindowsHookExW diff --git a/dlls/ext-ms-win-ntuser-window-l1-1-1/ext-ms-win-ntuser-window-l1-1-1.spec b/dlls/ext-ms-win-ntuser-window-l1-1-1/ext-ms-win-ntuser-window-l1-1-1.spec -index 4b563ffddb7..ea155c098d9 100644 +index 4b563ff..ea155c0 100644 --- a/dlls/ext-ms-win-ntuser-window-l1-1-1/ext-ms-win-ntuser-window-l1-1-1.spec +++ b/dlls/ext-ms-win-ntuser-window-l1-1-1/ext-ms-win-ntuser-window-l1-1-1.spec @@ -24,7 +24,7 @@ @@ -58,7 +58,7 @@ index 4b563ffddb7..ea155c098d9 100644 @ stdcall SetWindowTextW(long wstr) user32.SetWindowTextW @ stdcall SetWindowsHookExW(long long long long) user32.SetWindowsHookExW diff --git a/dlls/user32/tests/win.c b/dlls/user32/tests/win.c -index 0fc262986bb..9b8d16adc5f 100644 +index 96a2467..6cd1bd8 100644 --- a/dlls/user32/tests/win.c +++ b/dlls/user32/tests/win.c @@ -67,6 +67,8 @@ static BOOL (WINAPI *pFlashWindowEx)( PFLASHWINFO pfwi ); @@ -70,8 +70,8 @@ index 0fc262986bb..9b8d16adc5f 100644 static BOOL test_lbuttondown_flag; static DWORD num_gettext_msgs; -@@ -9950,6 +9952,88 @@ static void test_desktop( void ) - } +@@ -10433,6 +10435,88 @@ if (!is_wine) /* FIXME: remove once Wine is fixed */ + DestroyWindow(owner); } +static void test_display_affinity( HWND win ) @@ -159,7 +159,7 @@ index 0fc262986bb..9b8d16adc5f 100644 START_TEST(win) { char **argv; -@@ -9974,6 +10058,8 @@ START_TEST(win) +@@ -10457,6 +10541,8 @@ START_TEST(win) pGetLayout = (void *)GetProcAddress( gdi32, "GetLayout" ); pSetLayout = (void *)GetProcAddress( gdi32, "SetLayout" ); pMirrorRgn = (void *)GetProcAddress( gdi32, "MirrorRgn" ); @@ -168,16 +168,16 @@ index 0fc262986bb..9b8d16adc5f 100644 if (argc==4 && !strcmp(argv[2], "create_children")) { -@@ -10099,6 +10185,7 @@ START_TEST(win) +@@ -10581,6 +10667,7 @@ START_TEST(win) test_deferwindowpos(); test_LockWindowUpdate(hwndMain); test_desktop(); + test_display_affinity(hwndMain); + test_hide_window(); + test_minimize_window(hwndMain); - /* add the tests above this line */ - if (hhook) UnhookWindowsHookEx(hhook); diff --git a/dlls/user32/user32.spec b/dlls/user32/user32.spec -index 9407c34843b..b2588128145 100644 +index e45cafa..f601d7d 100644 --- a/dlls/user32/user32.spec +++ b/dlls/user32/user32.spec @@ -388,6 +388,7 @@ @@ -197,10 +197,10 @@ index 9407c34843b..b2588128145 100644 @ stdcall SetWindowLongA(long long long) @ stdcall -arch=win64 SetWindowLongPtrA(long long long) diff --git a/dlls/user32/win.c b/dlls/user32/win.c -index eced3969d36..3042a560ce9 100644 +index b13032b..794f333 100644 --- a/dlls/user32/win.c +++ b/dlls/user32/win.c -@@ -4034,3 +4034,37 @@ BOOL WINAPI GetGestureInfo(HGESTUREINFO handle, PGESTUREINFO ptr) +@@ -4029,3 +4029,37 @@ BOOL WINAPI GetGestureInfo(HGESTUREINFO handle, PGESTUREINFO ptr) SetLastError(ERROR_CALL_NOT_IMPLEMENTED); return FALSE; } @@ -239,10 +239,10 @@ index eced3969d36..3042a560ce9 100644 + return FALSE; +} diff --git a/include/winuser.h b/include/winuser.h -index c496087bbfb..d8a5bec4533 100644 +index 05bf590..08a0298 100644 --- a/include/winuser.h +++ b/include/winuser.h -@@ -2535,6 +2535,9 @@ typedef struct tagMINIMIZEDMETRICS { +@@ -2533,6 +2533,9 @@ typedef struct tagMINIMIZEDMETRICS { int iArrange; } MINIMIZEDMETRICS, *PMINIMIZEDMETRICS, *LPMINIMIZEDMETRICS; @@ -252,7 +252,7 @@ index c496087bbfb..d8a5bec4533 100644 /* Window scrolling */ #define SW_SCROLLCHILDREN 0x0001 -@@ -3772,6 +3775,7 @@ WINUSERAPI BOOL WINAPI GetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION +@@ -3771,6 +3774,7 @@ WINUSERAPI BOOL WINAPI GetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION WINUSERAPI HWND WINAPI GetWindow(HWND,UINT); WINUSERAPI DWORD WINAPI GetWindowContextHelpId(HWND); WINUSERAPI HDC WINAPI GetWindowDC(HWND); @@ -260,7 +260,7 @@ index c496087bbfb..d8a5bec4533 100644 WINUSERAPI BOOL WINAPI GetWindowInfo(HWND, PWINDOWINFO); WINUSERAPI LONG WINAPI GetWindowLongA(HWND,INT); WINUSERAPI LONG WINAPI GetWindowLongW(HWND,INT); -@@ -4074,6 +4078,7 @@ WINUSERAPI BOOL WINAPI SetUserObjectInformationW(HANDLE,INT,LPVOID,DWORD) +@@ -4073,6 +4077,7 @@ WINUSERAPI BOOL WINAPI SetUserObjectInformationW(HANDLE,INT,LPVOID,DWORD) #define SetUserObjectInformation WINELIB_NAME_AW(SetUserObjectInformation) WINUSERAPI BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR); WINUSERAPI BOOL WINAPI SetWindowContextHelpId(HWND,DWORD); @@ -269,5 +269,5 @@ index c496087bbfb..d8a5bec4533 100644 WINUSERAPI LONG WINAPI SetWindowLongW(HWND,INT,LONG); #define SetWindowLong WINELIB_NAME_AW(SetWindowLong) -- -2.13.1 +2.7.4 diff --git a/patches/wbemprox-Win32_VideoController/0005-wbemprox-Add-Vendor-field-in-Win32_ComputerSystemPro.patch b/patches/wbemprox-Win32_VideoController/0005-wbemprox-Add-Vendor-field-in-Win32_ComputerSystemPro.patch deleted file mode 100644 index 16c296e5..00000000 --- a/patches/wbemprox-Win32_VideoController/0005-wbemprox-Add-Vendor-field-in-Win32_ComputerSystemPro.patch +++ /dev/null @@ -1,60 +0,0 @@ -From eae806b2918bb7e417c0deeca518102434eb7041 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Sun, 19 Mar 2017 21:42:24 +0100 -Subject: wbemprox: Add Vendor field in Win32_ComputerSystemProduct. - ---- - dlls/wbemprox/builtin.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/dlls/wbemprox/builtin.c b/dlls/wbemprox/builtin.c -index ffcffaa621..70907bf1d4 100644 ---- a/dlls/wbemprox/builtin.c -+++ b/dlls/wbemprox/builtin.c -@@ -391,6 +391,8 @@ static const WCHAR prop_varianttypeW[] = - {'V','a','r','i','a','n','t','T','y','p','e',0}; - static const WCHAR prop_versionW[] = - {'V','e','r','s','i','o','n',0}; -+static const WCHAR prop_vendorW[] = -+ {'V','e','n','d','o','r',0}; - static const WCHAR prop_videoarchitectureW[] = - {'V','i','d','e','o','A','r','c','h','i','t','e','c','t','u','r','e',0}; - static const WCHAR prop_videomemorytypeW[] = -@@ -452,7 +454,8 @@ static const struct column col_compsys[] = - static const struct column col_compsysproduct[] = - { - { prop_identifyingnumberW, CIM_STRING|COL_FLAG_KEY }, -- { prop_uuidW, CIM_STRING|COL_FLAG_DYNAMIC } -+ { prop_uuidW, CIM_STRING|COL_FLAG_DYNAMIC }, -+ { prop_vendorW, CIM_STRING }, - }; - static const struct column col_datafile[] = - { -@@ -760,6 +763,8 @@ static const WCHAR compsysproduct_identifyingnumberW[] = - static const WCHAR compsysproduct_uuidW[] = - {'d','e','a','d','d','e','a','d','-','d','e','a','d','-','d','e','a','d','-','d','e','a','d','-', - 'd','e','a','d','d','e','a','d','d','e','a','d',0}; -+static const WCHAR compsysproduct_vendorW[] = -+ {'W','i','n','e',0}; - static const WCHAR diskdrive_interfacetypeW[] = - {'I','D','E',0}; - static const WCHAR diskdrive_manufacturerW[] = -@@ -854,6 +859,7 @@ struct record_computersystemproduct - { - const WCHAR *identifyingnumber; - const WCHAR *uuid; -+ const WCHAR *vendor; - }; - struct record_datafile - { -@@ -1448,6 +1454,7 @@ static enum fill_status fill_compsysproduct( struct table *table, const struct e - rec = (struct record_computersystemproduct *)table->data; - rec->identifyingnumber = compsysproduct_identifyingnumberW; - rec->uuid = get_compsysproduct_uuid(); -+ rec->vendor = compsysproduct_vendorW; - if (!match_row( table, row, cond, &status )) free_row_values( table, row ); - else row++; - --- -2.11.0 - diff --git a/patches/wevtapi-EvtNext/0001-wevtapi-Add-stub-for-EvtNext.patch b/patches/wevtapi-EvtNext/0001-wevtapi-Add-stub-for-EvtNext.patch deleted file mode 100644 index ff393cde..00000000 --- a/patches/wevtapi-EvtNext/0001-wevtapi-Add-stub-for-EvtNext.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 31dab1225f9a417df6237c0f33a57128645af4d7 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Thu, 2 Feb 2017 20:06:04 +0100 -Subject: wevtapi: Add stub for EvtNext. - ---- - dlls/wevtapi/main.c | 16 ++++++++++++++++ - dlls/wevtapi/wevtapi.spec | 2 +- - 2 files changed, 17 insertions(+), 1 deletion(-) - -diff --git a/dlls/wevtapi/main.c b/dlls/wevtapi/main.c -index 0b88165abae..f0a8f729f24 100644 ---- a/dlls/wevtapi/main.c -+++ b/dlls/wevtapi/main.c -@@ -80,6 +80,22 @@ EVT_HANDLE WINAPI EvtOpenChannelConfig(EVT_HANDLE Session, LPCWSTR ChannelPath, - return NULL; - } - -+BOOL WINAPI EvtNext(EVT_HANDLE result, DWORD size, EVT_HANDLE *array, DWORD timeout, -+ DWORD flags, DWORD *ret_count) -+{ -+ FIXME("(%p %u %p %u %u %p) stub\n", result, size, array, timeout, flags, ret_count); -+ -+ if (timeout) -+ { -+ Sleep(timeout); -+ SetLastError(ERROR_TIMEOUT); -+ return FALSE; -+ } -+ -+ SetLastError(ERROR_NO_MORE_ITEMS); -+ return FALSE; -+} -+ - BOOL WINAPI EvtClose(EVT_HANDLE handle) - { - FIXME("(%p) stub\n", handle); -diff --git a/dlls/wevtapi/wevtapi.spec b/dlls/wevtapi/wevtapi.spec -index 328b0dbcd98..cf6002fa48d 100644 ---- a/dlls/wevtapi/wevtapi.spec -+++ b/dlls/wevtapi/wevtapi.spec -@@ -25,7 +25,7 @@ - @ stub EvtIntRetractConfig - @ stub EvtIntSysprepCleanup - @ stub EvtIntWriteXmlEventToLocalLogfile --@ stub EvtNext -+@ stdcall EvtNext(ptr long ptr long long ptr) - @ stub EvtNextChannelPath - @ stub EvtNextEventMetadata - @ stub EvtNextPublisherId --- -2.11.0 - diff --git a/patches/wevtapi-EvtNext/definition b/patches/wevtapi-EvtNext/definition deleted file mode 100644 index 2c4b746e..00000000 --- a/patches/wevtapi-EvtNext/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [42170] Add stub for wevtapi.EvtNext diff --git a/patches/widl-SLTG_Typelib_Support/0024-oleaut32-Add-support-for-decoding-SLTG-function-help.patch b/patches/widl-SLTG_Typelib_Support/0024-oleaut32-Add-support-for-decoding-SLTG-function-help.patch index 2fb6730c..f29e26a4 100644 --- a/patches/widl-SLTG_Typelib_Support/0024-oleaut32-Add-support-for-decoding-SLTG-function-help.patch +++ b/patches/widl-SLTG_Typelib_Support/0024-oleaut32-Add-support-for-decoding-SLTG-function-help.patch @@ -1,17 +1,18 @@ -From 3d5236979b081ae707d7f047fbf9e24a3cd0e4cf Mon Sep 17 00:00:00 2001 +From f86165f3d7289221abff169866659c8196c7f8dd Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 26 Jan 2016 15:41:06 +0800 -Subject: oleaut32: Add support for decoding SLTG function help strings. +Subject: [PATCH 24/26] oleaut32: Add support for decoding SLTG function help + strings. --- dlls/oleaut32/typelib.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c -index 4fb5a95..b9d8cbb 100644 +index f652e0b..d08ee5c 100644 --- a/dlls/oleaut32/typelib.c +++ b/dlls/oleaut32/typelib.c -@@ -4240,7 +4240,8 @@ static void SLTG_DoVars(char *pBlk, char *pFirstItem, ITypeInfoImpl *pTI, unsign +@@ -4206,7 +4206,8 @@ static void SLTG_DoVars(char *pBlk, char *pFirstItem, ITypeInfoImpl *pTI, unsign } static void SLTG_DoFuncs(char *pBlk, char *pFirstItem, ITypeInfoImpl *pTI, @@ -21,16 +22,16 @@ index 4fb5a95..b9d8cbb 100644 { SLTG_Function *pFunc; unsigned short i; -@@ -4277,6 +4278,8 @@ static void SLTG_DoFuncs(char *pBlk, char *pFirstItem, ITypeInfoImpl *pTI, +@@ -4243,6 +4244,8 @@ static void SLTG_DoFuncs(char *pBlk, char *pFirstItem, ITypeInfoImpl *pTI, pFuncDesc->funcdesc.cParams = pFunc->nacc >> 3; pFuncDesc->funcdesc.cParamsOpt = (pFunc->retnextopt & 0x7e) >> 1; - pFuncDesc->funcdesc.oVft = pFunc->vtblpos & ~1; + pFuncDesc->funcdesc.oVft = (pFunc->vtblpos & ~1) * sizeof(void *) / pTI->pTypeLib->ptr_size; + if (pFunc->helpstring != 0xffff) + pFuncDesc->HelpString = decode_string(hlp_strings, pBlk + pFunc->helpstring, pNameTable - pBlk, pTI->pTypeLib); if(pFunc->magic & SLTG_FUNCTION_FLAGS_PRESENT) pFuncDesc->funcdesc.wFuncFlags = pFunc->funcflags; -@@ -4364,7 +4367,7 @@ static void SLTG_ProcessCoClass(char *pBlk, ITypeInfoImpl *pTI, +@@ -4330,7 +4333,7 @@ static void SLTG_ProcessCoClass(char *pBlk, ITypeInfoImpl *pTI, static void SLTG_ProcessInterface(char *pBlk, ITypeInfoImpl *pTI, char *pNameTable, SLTG_TypeInfoHeader *pTIHeader, @@ -39,7 +40,7 @@ index 4fb5a95..b9d8cbb 100644 { char *pFirstItem; sltg_ref_lookup_t *ref_lookup = NULL; -@@ -4381,7 +4384,7 @@ static void SLTG_ProcessInterface(char *pBlk, ITypeInfoImpl *pTI, +@@ -4347,7 +4350,7 @@ static void SLTG_ProcessInterface(char *pBlk, ITypeInfoImpl *pTI, } if (pTITail->funcs_off != 0xffff) @@ -48,7 +49,7 @@ index 4fb5a95..b9d8cbb 100644 heap_free(ref_lookup); -@@ -4426,7 +4429,7 @@ static void SLTG_ProcessAlias(char *pBlk, ITypeInfoImpl *pTI, +@@ -4392,7 +4395,7 @@ static void SLTG_ProcessAlias(char *pBlk, ITypeInfoImpl *pTI, static void SLTG_ProcessDispatch(char *pBlk, ITypeInfoImpl *pTI, char *pNameTable, SLTG_TypeInfoHeader *pTIHeader, @@ -57,7 +58,7 @@ index 4fb5a95..b9d8cbb 100644 { sltg_ref_lookup_t *ref_lookup = NULL; if (pTIHeader->href_table != 0xffffffff) -@@ -4437,7 +4440,7 @@ static void SLTG_ProcessDispatch(char *pBlk, ITypeInfoImpl *pTI, +@@ -4403,7 +4406,7 @@ static void SLTG_ProcessDispatch(char *pBlk, ITypeInfoImpl *pTI, SLTG_DoVars(pBlk, pBlk + pTITail->vars_off, pTI, pTITail->cVars, pNameTable, ref_lookup); if (pTITail->funcs_off != 0xffff) @@ -66,7 +67,7 @@ index 4fb5a95..b9d8cbb 100644 if (pTITail->impls_off != 0xffff) SLTG_DoImpls(pBlk + pTITail->impls_off, pTI, FALSE, ref_lookup); -@@ -4461,7 +4464,7 @@ static void SLTG_ProcessEnum(char *pBlk, ITypeInfoImpl *pTI, +@@ -4427,7 +4430,7 @@ static void SLTG_ProcessEnum(char *pBlk, ITypeInfoImpl *pTI, static void SLTG_ProcessModule(char *pBlk, ITypeInfoImpl *pTI, char *pNameTable, SLTG_TypeInfoHeader *pTIHeader, @@ -75,7 +76,7 @@ index 4fb5a95..b9d8cbb 100644 { sltg_ref_lookup_t *ref_lookup = NULL; if (pTIHeader->href_table != 0xffffffff) -@@ -4472,7 +4475,7 @@ static void SLTG_ProcessModule(char *pBlk, ITypeInfoImpl *pTI, +@@ -4438,7 +4441,7 @@ static void SLTG_ProcessModule(char *pBlk, ITypeInfoImpl *pTI, SLTG_DoVars(pBlk, pBlk + pTITail->vars_off, pTI, pTITail->cVars, pNameTable, ref_lookup); if (pTITail->funcs_off != 0xffff) @@ -84,7 +85,7 @@ index 4fb5a95..b9d8cbb 100644 heap_free(ref_lookup); if (TRACE_ON(typelib)) dump_TypeInfo(pTI); -@@ -4734,7 +4737,7 @@ static ITypeLib2* ITypeLib2_Constructor_SLTG(LPVOID pLib, DWORD dwTLBLength) +@@ -4700,7 +4703,7 @@ static ITypeLib2* ITypeLib2_Constructor_SLTG(LPVOID pLib, DWORD dwTLBLength) case TKIND_INTERFACE: SLTG_ProcessInterface((char *)(pMemHeader + 1), *ppTypeInfoImpl, pNameTable, @@ -93,7 +94,7 @@ index 4fb5a95..b9d8cbb 100644 break; case TKIND_COCLASS: -@@ -4749,12 +4752,12 @@ static ITypeLib2* ITypeLib2_Constructor_SLTG(LPVOID pLib, DWORD dwTLBLength) +@@ -4715,12 +4718,12 @@ static ITypeLib2* ITypeLib2_Constructor_SLTG(LPVOID pLib, DWORD dwTLBLength) case TKIND_DISPATCH: SLTG_ProcessDispatch((char *)(pMemHeader + 1), *ppTypeInfoImpl, pNameTable, @@ -109,5 +110,5 @@ index 4fb5a95..b9d8cbb 100644 default: -- -2.6.4 +2.7.4 diff --git a/patches/windowscodecs-Palette_Images/0013-windowscodecs-Use-V_UI1-instead-of-V_UNION-to-assign.patch b/patches/windowscodecs-Palette_Images/0013-windowscodecs-Use-V_UI1-instead-of-V_UNION-to-assign.patch index a76648d8..6b2d019a 100644 --- a/patches/windowscodecs-Palette_Images/0013-windowscodecs-Use-V_UI1-instead-of-V_UNION-to-assign.patch +++ b/patches/windowscodecs-Palette_Images/0013-windowscodecs-Use-V_UI1-instead-of-V_UNION-to-assign.patch @@ -1,26 +1,26 @@ -From 56d7b4030df9de1de6fb35ec4f31dad2661f46f9 Mon Sep 17 00:00:00 2001 +From 8fcfe575232841cbd14f3bc8929595c5d2986960 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 20 Sep 2016 17:17:42 +0800 -Subject: windowscodecs: Use V_UI1() instead of V_UNION() to assign a VT_UI1 - variant member. +Subject: [PATCH 2/8] windowscodecs: Use V_UI1() instead of V_UNION() to assign + a VT_UI1 variant member. --- dlls/windowscodecs/tiffformat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/windowscodecs/tiffformat.c b/dlls/windowscodecs/tiffformat.c -index d94be78..1f757d8 100644 +index 6fe3f19..2238a0e 100644 --- a/dlls/windowscodecs/tiffformat.c +++ b/dlls/windowscodecs/tiffformat.c -@@ -1971,7 +1971,7 @@ static HRESULT WINAPI TiffEncoder_CreateNewFrame(IWICBitmapEncoder *iface, +@@ -1973,7 +1973,7 @@ static HRESULT WINAPI TiffEncoder_CreateNewFrame(IWICBitmapEncoder *iface, VARIANT v; VariantInit(&v); V_VT(&v) = VT_UI1; - V_UNION(&v, bVal) = WICTiffCompressionDontCare; + V_UI1(&v) = WICTiffCompressionDontCare; - hr = IPropertyBag2_Write(*ppIEncoderOptions, 1, opts, &v); + hr = IPropertyBag2_Write(*ppIEncoderOptions, 1, (PROPBAG2 *)opts, &v); VariantClear(&v); if (FAILED(hr)) -- -2.9.0 +2.7.4 diff --git a/patches/wined3d-Accounting/0001-wined3d-Use-real-values-for-memory-accounting-on-NVI.patch b/patches/wined3d-Accounting/0001-wined3d-Use-real-values-for-memory-accounting-on-NVI.patch index 430cbf8b..6fd565be 100644 --- a/patches/wined3d-Accounting/0001-wined3d-Use-real-values-for-memory-accounting-on-NVI.patch +++ b/patches/wined3d-Accounting/0001-wined3d-Use-real-values-for-memory-accounting-on-NVI.patch @@ -1,7 +1,8 @@ -From e91d235aa2fe4b1145a66f93ab18e840645301a9 Mon Sep 17 00:00:00 2001 +From b078695fc13099df9edf2eaba974f6535808f4a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 6 Jun 2015 06:53:34 +0200 -Subject: wined3d: Use real values for memory accounting on NVIDIA cards. +Subject: [PATCH] wined3d: Use real values for memory accounting on NVIDIA + cards. FIXME: Reimplement wined3d_device_get_available_texture_mem without using the context on the main thread. @@ -13,10 +14,10 @@ FIXME: Reimplement wined3d_device_get_available_texture_mem 4 files changed, 43 insertions(+), 4 deletions(-) diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c -index 89ea7721bf1..2e1648171bb 100644 +index 0ffc1ae..0c3937e 100644 --- a/dlls/d3d9/tests/device.c +++ b/dlls/d3d9/tests/device.c -@@ -9081,10 +9081,13 @@ static void test_vidmem_accounting(void) +@@ -9470,10 +9470,13 @@ static void test_vidmem_accounting(void) } vidmem_end = IDirect3DDevice9_GetAvailableTextureMem(device); @@ -35,10 +36,10 @@ index 89ea7721bf1..2e1648171bb 100644 for (i = 0; i < ARRAY_SIZE(textures); i++) { diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c -index e07d07c41e3..61ebafff0c9 100644 +index 17103cc..bce8936 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c -@@ -1281,8 +1281,33 @@ void CDECL wined3d_device_set_multithreaded(struct wined3d_device *device) +@@ -1284,8 +1284,33 @@ void CDECL wined3d_device_set_multithreaded(struct wined3d_device *device) UINT CDECL wined3d_device_get_available_texture_mem(const struct wined3d_device *device) { @@ -73,18 +74,18 @@ index e07d07c41e3..61ebafff0c9 100644 wine_dbgstr_longlong(device->adapter->vram_bytes), wine_dbgstr_longlong(device->adapter->vram_bytes_used), diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c -index 411545395a2..f0a2c56e322 100644 +index f7f6452..ec5d8d8 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c -@@ -261,6 +261,7 @@ static const struct wined3d_extension_map gl_extension_map[] = +@@ -270,6 +270,7 @@ static const struct wined3d_extension_map gl_extension_map[] = {"GL_NV_vertex_program2", NV_VERTEX_PROGRAM2 }, {"GL_NV_vertex_program2_option", NV_VERTEX_PROGRAM2_OPTION }, {"GL_NV_vertex_program3", NV_VERTEX_PROGRAM3 }, + {"GL_NVX_gpu_memory_info", NVX_GPU_MEMORY_INFO }, + }; - /* SGI */ - {"GL_SGIS_generate_mipmap", SGIS_GENERATE_MIPMAP }, -@@ -1571,6 +1572,15 @@ static const struct gpu_description *query_gpu_description(const struct wined3d_ + static const struct wined3d_extension_map wgl_extension_map[] = +@@ -1578,6 +1579,15 @@ static const struct gpu_description *query_gpu_description(const struct wined3d_ TRACE("Card reports vendor PCI ID 0x%04x, device PCI ID 0x%04x, 0x%s bytes of video memory.\n", vendor, device, wine_dbgstr_longlong(*vram_bytes)); } @@ -101,17 +102,17 @@ index 411545395a2..f0a2c56e322 100644 if (wined3d_settings.pci_vendor_id != PCI_VENDOR_NONE) { diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h -index 52fb5fd92c8..f60f8021c26 100644 +index cc6f888..daed891 100644 --- a/dlls/wined3d/wined3d_gl.h +++ b/dlls/wined3d/wined3d_gl.h -@@ -191,6 +191,7 @@ enum wined3d_gl_extension +@@ -199,6 +199,7 @@ enum wined3d_gl_extension NV_VERTEX_PROGRAM2, NV_VERTEX_PROGRAM2_OPTION, NV_VERTEX_PROGRAM3, + NVX_GPU_MEMORY_INFO, - /* SGI */ - SGIS_GENERATE_MIPMAP, /* WGL extensions */ + WGL_ARB_PIXEL_FORMAT, + WGL_EXT_SWAP_CONTROL, -- -2.12.2 +2.7.4 diff --git a/patches/wined3d-CSMT_Helper/definition b/patches/wined3d-CSMT_Helper/definition index 106dee3f..fbc79ad6 100644 --- a/patches/wined3d-CSMT_Helper/definition +++ b/patches/wined3d-CSMT_Helper/definition @@ -3,7 +3,6 @@ Depends: wined3d-DXTn Depends: wined3d-QUERY_Stubs Depends: wined3d-1DTextures Depends: wined3d-Silence_FIXMEs -Depends: wined3d-Revert_Buffer_Upload Depends: wined3d-Copy_Resource_Typeless Depends: wined3d-UAV_Counters Depends: wined3d-Dual_Source_Blending diff --git a/patches/wined3d-Revert_Buffer_Upload/0001-Revert-wined3d-Implement-wined3d_buffer_upload_data-.patch b/patches/wined3d-Revert_Buffer_Upload/0001-Revert-wined3d-Implement-wined3d_buffer_upload_data-.patch deleted file mode 100644 index b2c20d52..00000000 --- a/patches/wined3d-Revert_Buffer_Upload/0001-Revert-wined3d-Implement-wined3d_buffer_upload_data-.patch +++ /dev/null @@ -1,134 +0,0 @@ -From 213c4f62372760c1a3bdcd6f1c03bc9f1926c5be Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Wed, 8 Feb 2017 19:35:36 +0100 -Subject: Revert "wined3d: Implement wined3d_buffer_upload_data() on top of - wined3d_buffer_upload_ranges()." - -This reverts commit e2dbbec1af8ae2ea8813148d56e14c8c211ee334. ---- - dlls/wined3d/buffer.c | 30 +++++++++++++++++++----------- - dlls/wined3d/cs.c | 13 +++---------- - dlls/wined3d/wined3d_private.h | 2 +- - 3 files changed, 23 insertions(+), 22 deletions(-) - -diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c -index e953e9ad215..d81387291f1 100644 ---- a/dlls/wined3d/buffer.c -+++ b/dlls/wined3d/buffer.c -@@ -532,7 +532,7 @@ ULONG CDECL wined3d_buffer_incref(struct wined3d_buffer *buffer) - - /* Context activation is done by the caller. */ - static void wined3d_buffer_upload_ranges(struct wined3d_buffer *buffer, struct wined3d_context *context, -- const void *data, unsigned int data_offset, unsigned int range_count, const struct wined3d_map_range *ranges) -+ const void *data, unsigned int range_count, const struct wined3d_map_range *ranges) - { - const struct wined3d_gl_info *gl_info = context->gl_info; - const struct wined3d_map_range *range; -@@ -543,7 +543,7 @@ static void wined3d_buffer_upload_ranges(struct wined3d_buffer *buffer, struct w - { - range = &ranges[range_count]; - GL_EXTCALL(glBufferSubData(buffer->buffer_type_hint, -- range->offset, range->size, (BYTE *)data + range->offset - data_offset)); -+ range->offset, range->size, (BYTE *)data + range->offset)); - } - checkGLcall("glBufferSubData"); - } -@@ -599,7 +599,7 @@ static void buffer_conversion_upload(struct wined3d_buffer *buffer, struct wined - } - } - -- wined3d_buffer_upload_ranges(buffer, context, data, 0, buffer->modified_areas, buffer->maps); -+ wined3d_buffer_upload_ranges(buffer, context, data, buffer->modified_areas, buffer->maps); - - HeapFree(GetProcessHeap(), 0, data); - } -@@ -683,7 +683,7 @@ BOOL wined3d_buffer_load_location(struct wined3d_buffer *buffer, - case WINED3D_LOCATION_BUFFER: - if (!buffer->conversion_map) - wined3d_buffer_upload_ranges(buffer, context, buffer->resource.heap_memory, -- 0, buffer->modified_areas, buffer->maps); -+ buffer->modified_areas, buffer->maps); - else - buffer_conversion_upload(buffer, context); - break; -@@ -1215,23 +1215,31 @@ void wined3d_buffer_copy(struct wined3d_buffer *dst_buffer, unsigned int dst_off - wined3d_buffer_invalidate_range(dst_buffer, ~dst_location, dst_offset, size); - } - --void wined3d_buffer_upload_data(struct wined3d_buffer *buffer, struct wined3d_context *context, -+HRESULT wined3d_buffer_upload_data(struct wined3d_buffer *buffer, - const struct wined3d_box *box, const void *data) - { -- struct wined3d_map_range range; -+ UINT offset, size; -+ HRESULT hr; -+ BYTE *ptr; - - if (box) - { -- range.offset = box->left; -- range.size = box->right - box->left; -+ offset = box->left; -+ size = box->right - box->left; - } - else - { -- range.offset = 0; -- range.size = buffer->resource.size; -+ offset = 0; -+ size = buffer->resource.size; - } - -- wined3d_buffer_upload_ranges(buffer, context, data, range.offset, 1, &range); -+ if (FAILED(hr = wined3d_buffer_map(buffer, offset, size, &ptr, 0))) -+ return hr; -+ -+ memcpy(ptr, data, size); -+ -+ wined3d_buffer_unmap(buffer); -+ return WINED3D_OK; - } - - static ULONG buffer_resource_incref(struct wined3d_resource *resource) -diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c -index a76598ff4ca..f521475d3af 100644 ---- a/dlls/wined3d/cs.c -+++ b/dlls/wined3d/cs.c -@@ -2107,18 +2107,11 @@ static void wined3d_cs_exec_update_sub_resource(struct wined3d_cs *cs, const voi - if (op->resource->type == WINED3D_RTYPE_BUFFER) - { - struct wined3d_buffer *buffer = buffer_from_resource(op->resource); -+ HRESULT hr; - -- context = context_acquire(op->resource->device, NULL, 0); -- if (!wined3d_buffer_load_location(buffer, context, WINED3D_LOCATION_BUFFER)) -- { -- ERR("Failed to load buffer location.\n"); -- context_release(context); -- goto done; -- } -+ if (FAILED(hr = wined3d_buffer_upload_data(buffer, box, op->data.data))) -+ WARN("Failed to update buffer data, hr %#x.\n", hr); - -- wined3d_buffer_upload_data(buffer, context, box, op->data.data); -- wined3d_buffer_invalidate_location(buffer, ~WINED3D_LOCATION_BUFFER); -- context_release(context); - goto done; - } - -diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h -index f8aeb629c92..371b8b367ac 100644 ---- a/dlls/wined3d/wined3d_private.h -+++ b/dlls/wined3d/wined3d_private.h -@@ -3570,7 +3570,7 @@ BOOL wined3d_buffer_load_location(struct wined3d_buffer *buffer, - BYTE *wined3d_buffer_load_sysmem(struct wined3d_buffer *buffer, struct wined3d_context *context) DECLSPEC_HIDDEN; - void wined3d_buffer_copy(struct wined3d_buffer *dst_buffer, unsigned int dst_offset, - struct wined3d_buffer *src_buffer, unsigned int src_offset, unsigned int size) DECLSPEC_HIDDEN; --void wined3d_buffer_upload_data(struct wined3d_buffer *buffer, struct wined3d_context *context, -+HRESULT wined3d_buffer_upload_data(struct wined3d_buffer *buffer, - const struct wined3d_box *box, const void *data) DECLSPEC_HIDDEN; - - struct wined3d_rendertarget_view --- -2.13.1 - diff --git a/patches/wined3d-Revert_Buffer_Upload/definition b/patches/wined3d-Revert_Buffer_Upload/definition deleted file mode 100644 index 27371bdd..00000000 --- a/patches/wined3d-Revert_Buffer_Upload/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: Revert changes to wined3d_buffer_upload_data which cause broken rendering in some apps diff --git a/patches/wined3d-dxgi_swapchain_Present/definition b/patches/wined3d-dxgi_swapchain_Present/definition index a0cb6a5e..c514c91e 100644 --- a/patches/wined3d-dxgi_swapchain_Present/definition +++ b/patches/wined3d-dxgi_swapchain_Present/definition @@ -1,3 +1,2 @@ Fixes: Implement vsync handling for d3d10/d3d11 -Depends: dxgi-DXGI_PRESENT_TEST Depends: wined3d-Silence_FIXMEs diff --git a/patches/winex11-UpdateLayeredWindow/0001-winex11-Fix-alpha-blending-in-X11DRV_UpdateLayeredWi.patch b/patches/winex11-UpdateLayeredWindow/0001-winex11-Fix-alpha-blending-in-X11DRV_UpdateLayeredWi.patch index aa511c79..e9f39c34 100644 --- a/patches/winex11-UpdateLayeredWindow/0001-winex11-Fix-alpha-blending-in-X11DRV_UpdateLayeredWi.patch +++ b/patches/winex11-UpdateLayeredWindow/0001-winex11-Fix-alpha-blending-in-X11DRV_UpdateLayeredWi.patch @@ -1,7 +1,7 @@ -From ae27ea7329561c939058579f45154e7905042478 Mon Sep 17 00:00:00 2001 +From 4321aa370da9a3df82831cf0bcc697ce9f6af868 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Tue, 24 Jan 2017 12:37:46 +0100 -Subject: winex11: Fix alpha blending in X11DRV_UpdateLayeredWindow. +Subject: [PATCH] winex11: Fix alpha blending in X11DRV_UpdateLayeredWindow. Based on a patch by Dmitry Timoshkov. --- @@ -9,10 +9,10 @@ Based on a patch by Dmitry Timoshkov. 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c -index eaf6dcfa3ed..5dec74acae7 100644 +index 6d79f06..81cb2b3 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c -@@ -410,14 +410,11 @@ static void sync_window_region( struct x11drv_win_data *data, HRGN win_region ) +@@ -430,14 +430,11 @@ static void sync_window_region( struct x11drv_win_data *data, HRGN win_region ) /*********************************************************************** @@ -30,7 +30,7 @@ index eaf6dcfa3ed..5dec74acae7 100644 if (opacity == 0xffffffff) XDeleteProperty( display, win, x11drv_atom(_NET_WM_WINDOW_OPACITY) ); -@@ -1527,7 +1524,7 @@ static void create_whole_window( struct x11drv_win_data *data ) +@@ -1559,7 +1556,7 @@ static void create_whole_window( struct x11drv_win_data *data ) /* set the window opacity */ if (!GetLayeredWindowAttributes( data->hwnd, &key, &alpha, &layered_flags )) layered_flags = 0; @@ -39,17 +39,17 @@ index eaf6dcfa3ed..5dec74acae7 100644 XFlush( data->display ); /* make sure the window exists before we start painting to it */ -@@ -1647,7 +1644,7 @@ void CDECL X11DRV_SetWindowStyle( HWND hwnd, INT offset, STYLESTRUCT *style ) +@@ -1691,7 +1688,7 @@ void CDECL X11DRV_SetWindowStyle( HWND hwnd, INT offset, STYLESTRUCT *style ) { data->layered = FALSE; - set_window_visual( data, &default_visual ); + set_window_visual( data, &default_visual, FALSE ); - sync_window_opacity( data->display, data->whole_window, 0, 0, 0 ); + set_window_opacity( data->display, data->whole_window, 0xff ); if (data->surface) set_surface_color_key( data->surface, CLR_INVALID ); } done: -@@ -2538,7 +2535,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph - set_window_visual( data, &default_visual ); +@@ -2570,7 +2567,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph + set_window_visual( data, &default_visual, FALSE ); if (data->whole_window) - sync_window_opacity( data->display, data->whole_window, key, alpha, flags ); @@ -57,7 +57,7 @@ index eaf6dcfa3ed..5dec74acae7 100644 if (data->surface) set_surface_color_key( data->surface, (flags & LWA_COLORKEY) ? key : CLR_INVALID ); -@@ -2562,7 +2559,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph +@@ -2594,7 +2591,7 @@ void CDECL X11DRV_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alph Window win = X11DRV_get_whole_window( hwnd ); if (win) { @@ -66,7 +66,7 @@ index eaf6dcfa3ed..5dec74acae7 100644 if (flags & LWA_COLORKEY) FIXME( "LWA_COLORKEY not supported on foreign process window %p\n", hwnd ); } -@@ -2578,7 +2575,6 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO +@@ -2610,7 +2607,6 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO { struct window_surface *surface; struct x11drv_win_data *data; @@ -74,7 +74,7 @@ index eaf6dcfa3ed..5dec74acae7 100644 COLORREF color_key = (info->dwFlags & ULW_COLORKEY) ? info->crKey : CLR_INVALID; char buffer[FIELD_OFFSET( BITMAPINFO, bmiColors[256] )]; BITMAPINFO *bmi = (BITMAPINFO *)buffer; -@@ -2606,6 +2602,10 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO +@@ -2638,6 +2634,10 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO } else set_surface_color_key( surface, color_key ); @@ -85,7 +85,7 @@ index eaf6dcfa3ed..5dec74acae7 100644 if (surface) window_surface_add_ref( surface ); release_win_data( data ); -@@ -2629,16 +2629,15 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO +@@ -2661,16 +2661,15 @@ BOOL CDECL X11DRV_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO { IntersectRect( &rect, &rect, info->prcDirty ); memcpy( src_bits, dst_bits, bmi->bmiHeader.biSizeImage ); @@ -107,5 +107,5 @@ index eaf6dcfa3ed..5dec74acae7 100644 { memcpy( dst_bits, src_bits, bmi->bmiHeader.biSizeImage ); -- -2.13.1 +2.7.4 diff --git a/staging/VERSION b/staging/VERSION index 7de8ea90..38c4d80e 100644 --- a/staging/VERSION +++ b/staging/VERSION @@ -1 +1 @@ -Wine Staging 2.21 +Wine Staging 3.1 (Unreleased) diff --git a/staging/patchinstall.sh.in b/staging/patchinstall.sh.in index ed547633..8e7607ac 100644 --- a/staging/patchinstall.sh.in +++ b/staging/patchinstall.sh.in @@ -59,7 +59,8 @@ upstream_commit() version() {{ echo "{staging_version}" - echo "Copyright (C) 2014-2017 the Wine Staging project authors." + echo "Copyright (C) 2014-2018 the Wine Staging project authors." + echo "Copyright (C) 2018 Alistair Leslie-Hughes" echo "" echo "Patchset to be applied on upstream Wine:" echo " commit $(upstream_commit)"