Rebase against 7cd7f14696dc3fb7aa41ef253ad144d458304a28.

This commit is contained in:
Sebastian Lackner 2017-05-02 12:57:50 +02:00
parent d80c4a83fd
commit 2db34eca39
9 changed files with 50 additions and 294 deletions

View File

@ -1,43 +0,0 @@
From 765b7ac424a30543d0ca6da8c217d8eb024b870b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 29 Apr 2016 16:39:50 +0200
Subject: dmusic: Implement IDirectMusicBuffer::PackStructured.
---
dlls/dmusic/buffer.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/dlls/dmusic/buffer.c b/dlls/dmusic/buffer.c
index bd0ad1a..5be2e0d 100644
--- a/dlls/dmusic/buffer.c
+++ b/dlls/dmusic/buffer.c
@@ -134,9 +134,26 @@ static HRESULT WINAPI IDirectMusicBufferImpl_PackStructured(LPDIRECTMUSICBUFFER
static HRESULT WINAPI IDirectMusicBufferImpl_PackUnstructured(LPDIRECTMUSICBUFFER iface, REFERENCE_TIME rt, DWORD dwChannelGroup, DWORD cb, LPBYTE lpb)
{
IDirectMusicBufferImpl *This = impl_from_IDirectMusicBuffer(iface);
+ DWORD new_write_pos = This->write_pos + sizeof(DMUS_EVENTHEADER) + cb;
+ DMUS_EVENTHEADER header;
FIXME("(%p, 0x%s, %d, %d, %p): stub\n", This, wine_dbgstr_longlong(rt), dwChannelGroup, cb, lpb);
+ if (new_write_pos > This->size)
+ return DMUS_E_BUFFER_FULL;
+
+ if (!This->write_pos)
+ This->start_time = rt;
+
+ header.cbEvent = cb;
+ header.dwChannelGroup = dwChannelGroup;
+ header.rtDelta = rt - This->start_time;
+ header.dwFlags = 0;
+
+ memcpy(This->data + This->write_pos, &header, sizeof(header));
+ memcpy(This->data + This->write_pos + sizeof(header), lpb, cb);
+ This->write_pos = new_write_pos;
+
return S_OK;
}
--
2.8.0

View File

@ -1,4 +1,4 @@
From 3c9bfe68c7bc4accbe80eeba910a227dc5ffa588 Mon Sep 17 00:00:00 2001
From 0cb287b9ba62ee9e353248861d4c177f7db48dcb Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Wed, 20 Jul 2016 02:21:41 +0200
Subject: ntdll: Ensure process dlls are not attached too early. (v2)
@ -8,18 +8,18 @@ Subject: ntdll: Ensure process dlls are not attached too early. (v2)
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index f1ef7ab..adb6b95 100644
index 518a99f590..94668e8ba4 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -63,6 +63,7 @@ WINE_DECLARE_DEBUG_CHANNEL(pid);
@@ -64,6 +64,7 @@ WINE_DECLARE_DEBUG_CHANNEL(pid);
typedef DWORD (CALLBACK *DLLENTRYPROC)(HMODULE,DWORD,LPVOID);
typedef void (CALLBACK *LDRENUMPROC)(LDR_MODULE *, void *, BOOLEAN *);
+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 */
@@ -445,7 +446,20 @@ static FARPROC find_forwarded_export( HMODULE module, const char *forward, LPCWS
@@ -452,7 +453,20 @@ static FARPROC find_forwarded_export( HMODULE module, const char *forward, LPCWS
if (load_dll( load_path, mod_name, 0, &wm ) == STATUS_SUCCESS &&
!(wm->ldr.Flags & LDR_DONT_RESOLVE_REFS))
{
@ -41,7 +41,7 @@ index f1ef7ab..adb6b95 100644
{
LdrUnloadDll( wm->ldr.BaseAddress );
wm = NULL;
@@ -2970,6 +2984,7 @@ static NTSTATUS attach_process_dlls( void *wm )
@@ -3005,6 +3019,7 @@ static NTSTATUS attach_process_dlls( void *wm )
{
NTSTATUS status;
@ -50,5 +50,5 @@ index f1ef7ab..adb6b95 100644
RtlEnterCriticalSection( &loader_section );
--
2.9.0
2.12.2

View File

@ -1,4 +1,4 @@
From 41a15135b0c1894724c1c91311faa255ad96d732 Mon Sep 17 00:00:00 2001
From ab7508f34fd0f428392e8e0811709f6436e00c93 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 30 May 2015 02:23:15 +0200
Subject: ntdll: Add support for hiding wine version information from
@ -10,12 +10,12 @@ Subject: ntdll: Add support for hiding wine version information from
2 files changed, 100 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index b95b8852aa..1c0ba6161d 100644
index 94668e8ba4..f4e002a060 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -63,9 +63,12 @@ WINE_DECLARE_DEBUG_CHANNEL(pid);
@@ -64,9 +64,12 @@ WINE_DECLARE_DEBUG_CHANNEL(pid);
typedef DWORD (CALLBACK *DLLENTRYPROC)(HMODULE,DWORD,LPVOID);
typedef void (CALLBACK *LDRENUMPROC)(LDR_MODULE *, void *, BOOLEAN *);
+#define IS_OPTION_TRUE(ch) ((ch) == 'y' || (ch) == 'Y' || (ch) == 't' || (ch) == 'T' || (ch) == '1')
+
@ -26,7 +26,7 @@ index b95b8852aa..1c0ba6161d 100644
static const char * const reason_names[] =
{
@@ -1456,6 +1459,96 @@ NTSTATUS WINAPI LdrUnlockLoaderLock( ULONG flags, ULONG_PTR magic )
@@ -1485,6 +1488,96 @@ NTSTATUS WINAPI LdrUnlockLoaderLock( ULONG flags, ULONG_PTR magic )
}
@ -123,7 +123,7 @@ index b95b8852aa..1c0ba6161d 100644
/******************************************************************
* LdrGetProcedureAddress (NTDLL.@)
*/
@@ -1476,7 +1569,7 @@ NTSTATUS WINAPI LdrGetProcedureAddress(HMODULE module, const ANSI_STRING *name,
@@ -1505,7 +1598,7 @@ NTSTATUS WINAPI LdrGetProcedureAddress(HMODULE module, const ANSI_STRING *name,
LPCWSTR load_path = NtCurrentTeb()->Peb->ProcessParameters->DllPath.Buffer;
void *proc = name ? find_named_export( module, exports, exp_size, name->Buffer, -1, load_path )
: find_ordinal_export( module, exports, exp_size, ord - exports->Base, load_path );
@ -132,7 +132,7 @@ index b95b8852aa..1c0ba6161d 100644
{
*address = proc;
ret = STATUS_SUCCESS;
@@ -3099,6 +3192,7 @@ void WINAPI LdrInitializeThunk( void *kernel_start, ULONG_PTR unknown2,
@@ -3128,6 +3221,7 @@ void WINAPI LdrInitializeThunk( void *kernel_start, ULONG_PTR unknown2,
if (!peb->ProcessParameters->WindowTitle.Buffer)
peb->ProcessParameters->WindowTitle = wm->ldr.FullDllName;
version_init( wm->ldr.FullDllName.Buffer );
@ -141,7 +141,7 @@ index b95b8852aa..1c0ba6161d 100644
LdrQueryImageFileExecutionOptions( &peb->ProcessParameters->ImagePathName, globalflagW,
diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h
index 443c86000d..ba4adff249 100644
index 6549a71fc0..6e51612380 100644
--- a/dlls/ntdll/ntdll_misc.h
+++ b/dlls/ntdll/ntdll_misc.h
@@ -266,6 +266,11 @@ extern HANDLE keyed_event DECLSPEC_HIDDEN;
@ -157,5 +157,5 @@ index 443c86000d..ba4adff249 100644
extern BOOL read_process_time(int unix_pid, int unix_tid, unsigned long clk_tck,
LARGE_INTEGER *kernel, LARGE_INTEGER *user) DECLSPEC_HIDDEN;
--
2.11.0
2.12.2

View File

@ -1,153 +0,0 @@
From 7221933818afc91b76f6b12ead544570d8ff336a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 3 Feb 2017 00:05:10 +0100
Subject: ntdll: Implement LdrEnumerateLoadedModules.
---
dlls/ntdll/loader.c | 31 +++++++++++++++++++++++++++++
dlls/ntdll/ntdll.spec | 2 +-
dlls/ntdll/tests/rtl.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 86 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index cf758505a4c..0b507da9a08 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -1393,6 +1393,37 @@ NTSTATUS WINAPI LdrFindEntryForAddress(const void* addr, PLDR_MODULE* pmod)
return STATUS_NO_MORE_ENTRIES;
}
+typedef void (WINAPI LDR_ENUM_CALLBACK)(LDR_MODULE*, void*, BOOLEAN*);
+
+/******************************************************************
+ * LdrEnumerateLoadedModules (NTDLL.@)
+ */
+NTSTATUS WINAPI LdrEnumerateLoadedModules(void *unknown, LDR_ENUM_CALLBACK *callback, void *context)
+{
+ PLIST_ENTRY mark, entry;
+ PLDR_MODULE mod;
+ BOOLEAN stop = FALSE;
+
+ TRACE("(%p, %p, %p)\n", unknown, callback, context);
+
+ if (unknown || !callback)
+ return STATUS_INVALID_PARAMETER;
+
+ RtlEnterCriticalSection( &loader_section );
+
+ mark = &NtCurrentTeb()->Peb->LdrData->InMemoryOrderModuleList;
+ for (entry = mark->Flink; entry != mark; entry = entry->Flink)
+ {
+ mod = CONTAINING_RECORD(entry, LDR_MODULE, InMemoryOrderModuleList);
+ callback(mod, context, &stop);
+ if (stop) break;
+ }
+
+ RtlLeaveCriticalSection( &loader_section );
+
+ return STATUS_SUCCESS;
+}
+
/******************************************************************
* LdrLockLoaderLock (NTDLL.@)
*
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index b4269a679fc..66ecb7d0f37 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -62,7 +62,7 @@
# @ stub LdrDestroyOutOfProcessImage
@ stdcall LdrDisableThreadCalloutsForDll(long)
@ stub LdrEnumResources
-# @ stub LdrEnumerateLoadedModules
+@ stdcall LdrEnumerateLoadedModules(ptr ptr ptr)
# @ stub LdrFindCreateProcessManifest
@ stdcall LdrFindEntryForAddress(ptr ptr)
@ stdcall LdrFindResourceDirectory_U(long ptr long ptr)
diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c
index 940c44a05bd..873437e7f4b 100644
--- a/dlls/ntdll/tests/rtl.c
+++ b/dlls/ntdll/tests/rtl.c
@@ -102,6 +102,7 @@ static BOOL (WINAPI *pRtlIsCriticalSectionLocked)(CRITICAL_SECTION *);
static BOOL (WINAPI *pRtlIsCriticalSectionLockedByThread)(CRITICAL_SECTION *);
static NTSTATUS (WINAPI *pRtlInitializeCriticalSectionEx)(CRITICAL_SECTION *, ULONG, ULONG);
static NTSTATUS (WINAPI *pRtlQueryPackageIdentity)(HANDLE, WCHAR*, SIZE_T*, WCHAR*, SIZE_T*, BOOLEAN*);
+static NTSTATUS (WINAPI *pLdrEnumerateLoadedModules)(void*, void*, void*);
static HMODULE hkernel32 = 0;
static BOOL (WINAPI *pIsWow64Process)(HANDLE, PBOOL);
@@ -156,6 +157,7 @@ static void InitFunctionPtrs(void)
pRtlIsCriticalSectionLockedByThread = (void *)GetProcAddress(hntdll, "RtlIsCriticalSectionLockedByThread");
pRtlInitializeCriticalSectionEx = (void *)GetProcAddress(hntdll, "RtlInitializeCriticalSectionEx");
pRtlQueryPackageIdentity = (void *)GetProcAddress(hntdll, "RtlQueryPackageIdentity");
+ pLdrEnumerateLoadedModules = (void *)GetProcAddress(hntdll, "LdrEnumerateLoadedModules");
}
hkernel32 = LoadLibraryA("kernel32.dll");
ok(hkernel32 != 0, "LoadLibrary failed\n");
@@ -2228,6 +2230,57 @@ done:
CoUninitialize();
}
+static BOOL enum_abort = FALSE;
+static BOOL ntdll_found = FALSE;
+static int module_count = 0;
+
+void WINAPI ldr_enum_callback(LDR_MODULE *module, void *context, BOOLEAN *stop)
+{
+ static const WCHAR ntdllW[] = {'n','t','d','l','l','.','d','l','l',0};
+ ok(context == (void *)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", context);
+
+ module_count++;
+
+ if (!lstrcmpiW(module->BaseDllName.Buffer, ntdllW))
+ ntdll_found = TRUE;
+
+ *stop = enum_abort;
+}
+
+static void test_LdrEnumerateLoadedModules(void)
+{
+ NTSTATUS status;
+
+ if (!pLdrEnumerateLoadedModules)
+ {
+ win_skip("LdrEnumerateLoadedModules not available\n");
+ return;
+ }
+
+ enum_abort = FALSE;
+ ntdll_found = FALSE;
+ module_count = 0;
+ status = pLdrEnumerateLoadedModules(NULL, ldr_enum_callback, (void *)0xdeadbeef);
+ ok(status == STATUS_SUCCESS, "got wrong status 0x%08x\n", status);
+ ok(ntdll_found, "Could not find ntdll!\n");
+ ok(module_count > 1, "Expected more than one module, got %d\n", module_count);
+
+ enum_abort = TRUE;
+ module_count = 0;
+ status = pLdrEnumerateLoadedModules(NULL, ldr_enum_callback, (void *)0xdeadbeef);
+ ok(status == STATUS_SUCCESS, "got wrong status 0x%08x\n", status);
+ ok(module_count == 1, "Expected exactly one module, got %d\n", module_count);
+
+ status = pLdrEnumerateLoadedModules((void *)0x1, ldr_enum_callback, (void *)0xdeadbeef);
+ ok(status == STATUS_INVALID_PARAMETER, "got wrong status 0x%08x\n", status);
+
+ status = pLdrEnumerateLoadedModules((void *)0xdeadbeef, ldr_enum_callback, (void *)0xdeadbeef);
+ ok(status == STATUS_INVALID_PARAMETER, "got wrong status 0x%08x\n", status);
+
+ status = pLdrEnumerateLoadedModules(NULL, NULL, (void *)0xdeadbeef);
+ ok(status == STATUS_INVALID_PARAMETER, "got wrong status 0x%08x\n", status);
+}
+
START_TEST(rtl)
{
InitFunctionPtrs();
@@ -2261,4 +2314,5 @@ START_TEST(rtl)
test_RtlInitializeCriticalSectionEx();
test_RtlLeaveCriticalSection();
test_RtlQueryPackageIdentity();
+ test_LdrEnumerateLoadedModules();
}
--
2.11.0

View File

@ -1,2 +0,0 @@
Fixes: [42296] Implement ntdll.LdrEnumerateLoadedModules
Depends: ntdll-RtlQueryPackageIdentity

View File

@ -1,4 +1,4 @@
From 1ad505d34d229476373ba4f3422934f0440f2fee Mon Sep 17 00:00:00 2001
From 29ec5605140dec0a480bde2024c3ef8a682eb46e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 17 Jan 2016 00:50:50 +0100
Subject: ntdll/tests: Add basic tests for RtlQueryPackageIdentity.
@ -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 fc352dd22be..0de4fe8f207 100644
index fc352dd22b..0de4fe8f20 100644
--- a/dlls/ntdll/tests/Makefile.in
+++ b/dlls/ntdll/tests/Makefile.in
@@ -1,5 +1,5 @@
@ -20,7 +20,7 @@ index fc352dd22be..0de4fe8f207 100644
C_SRCS = \
atom.c \
diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c
index b18cccf4f35..940c44a05bd 100644
index 7176e448ef..8292f72527 100644
--- a/dlls/ntdll/tests/rtl.c
+++ b/dlls/ntdll/tests/rtl.c
@@ -25,6 +25,9 @@
@ -33,24 +33,24 @@ index b18cccf4f35..940c44a05bd 100644
#ifndef __WINE_WINTERNL_H
@@ -98,6 +101,7 @@ static NTSTATUS (WINAPI *pRtlCompressBuffer)(USHORT, const UCHAR*, ULONG, PUCHA
static BOOL (WINAPI *pRtlIsCriticalSectionLocked)(CRITICAL_SECTION *);
@@ -99,6 +102,7 @@ static BOOL (WINAPI *pRtlIsCriticalSectionLocked)(CRITICAL_SECTION *);
static BOOL (WINAPI *pRtlIsCriticalSectionLockedByThread)(CRITICAL_SECTION *);
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 HMODULE hkernel32 = 0;
static BOOL (WINAPI *pIsWow64Process)(HANDLE, PBOOL);
@@ -151,6 +155,7 @@ static void InitFunctionPtrs(void)
pRtlIsCriticalSectionLocked = (void *)GetProcAddress(hntdll, "RtlIsCriticalSectionLocked");
@@ -153,6 +157,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");
}
hkernel32 = LoadLibraryA("kernel32.dll");
ok(hkernel32 != 0, "LoadLibrary failed\n");
@@ -2153,6 +2158,76 @@ static void test_RtlLeaveCriticalSection(void)
ok(!status, "RtlDeleteCriticalSection failed: %x\n", status);
@@ -2209,6 +2214,76 @@ static void test_LdrEnumerateLoadedModules(void)
ok(status == STATUS_INVALID_PARAMETER, "expected STATUS_INVALID_PARAMETER, got 0x%08x\n", status);
}
+static void test_RtlQueryPackageIdentity(void)
@ -126,12 +126,12 @@ index b18cccf4f35..940c44a05bd 100644
START_TEST(rtl)
{
InitFunctionPtrs();
@@ -2185,4 +2260,5 @@ START_TEST(rtl)
test_RtlIsCriticalSectionLocked();
@@ -2242,4 +2317,5 @@ START_TEST(rtl)
test_RtlInitializeCriticalSectionEx();
test_RtlLeaveCriticalSection();
test_LdrEnumerateLoadedModules();
+ test_RtlQueryPackageIdentity();
}
--
2.11.0
2.12.2

View File

@ -52,13 +52,13 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "07cf14dc928a1a00baecbbc7ca5a6f3fe680238c"
echo "7cd7f14696dc3fb7aa41ef253ad144d458304a28"
}
# Show version information
version()
{
echo "Wine Staging 2.7"
echo "Wine Staging 2.8 (unreleased)"
echo "Copyright (C) 2014-2017 the Wine Staging project authors."
echo ""
echo "Patchset to be applied on upstream Wine:"
@ -144,7 +144,6 @@ patch_enable_all ()
enable_devenum_AudioCompressorCategory="$1"
enable_dinput_Initialize="$1"
enable_dmloader_Tests="$1"
enable_dmusic_SynthPort_IKsControl="$1"
enable_dsound_EAX="$1"
enable_dsound_Fast_Mixer="$1"
enable_dsound_Revert_Cleanup="$1"
@ -237,7 +236,6 @@ patch_enable_all ()
enable_ntdll_Interrupt_0x2e="$1"
enable_ntdll_Junction_Points="$1"
enable_ntdll_LDR_MODULE="$1"
enable_ntdll_LdrEnumerateLoadedModules="$1"
enable_ntdll_LdrGetDllHandle="$1"
enable_ntdll_Loader_Machine_Type="$1"
enable_ntdll_NtAccessCheck="$1"
@ -659,9 +657,6 @@ patch_enable ()
dmloader-Tests)
enable_dmloader_Tests="$2"
;;
dmusic-SynthPort_IKsControl)
enable_dmusic_SynthPort_IKsControl="$2"
;;
dsound-EAX)
enable_dsound_EAX="$2"
;;
@ -938,9 +933,6 @@ patch_enable ()
ntdll-LDR_MODULE)
enable_ntdll_LDR_MODULE="$2"
;;
ntdll-LdrEnumerateLoadedModules)
enable_ntdll_LdrEnumerateLoadedModules="$2"
;;
ntdll-LdrGetDllHandle)
enable_ntdll_LdrGetDllHandle="$2"
;;
@ -2326,13 +2318,6 @@ if test "$enable_ntdll_NtSuspendProcess" -eq 1; then
enable_kernel32_K32GetPerformanceInfo=1
fi
if test "$enable_ntdll_LdrEnumerateLoadedModules" -eq 1; then
if test "$enable_ntdll_RtlQueryPackageIdentity" -gt 1; then
abort "Patchset ntdll-RtlQueryPackageIdentity disabled, but ntdll-LdrEnumerateLoadedModules depends on that."
fi
enable_ntdll_RtlQueryPackageIdentity=1
fi
if test "$enable_ntdll_Junction_Points" -eq 1; then
if test "$enable_ntdll_NtQueryEaFile" -gt 1; then
abort "Patchset ntdll-NtQueryEaFile disabled, but ntdll-Junction_Points depends on that."
@ -3835,18 +3820,6 @@ if test "$enable_dmloader_Tests" -eq 1; then
) >> "$patchlist"
fi
# Patchset dmusic-SynthPort_IKsControl
# |
# | Modified files:
# | * dlls/dmusic/buffer.c
# |
if test "$enable_dmusic_SynthPort_IKsControl" -eq 1; then
patch_apply dmusic-SynthPort_IKsControl/0001-dmusic-Implement-IDirectMusicBuffer-PackStructured.patch
(
printf '%s\n' '+ { "Michael Müller", "dmusic: Implement IDirectMusicBuffer::PackStructured.", 1 },';
) >> "$patchlist"
fi
# Patchset dsound-Fast_Mixer
# |
# | This patchset fixes the following Wine bugs:
@ -5514,40 +5487,6 @@ if test "$enable_ntdll_Junction_Points" -eq 1; then
) >> "$patchlist"
fi
# Patchset ntdll-RtlQueryPackageIdentity
# |
# | Modified files:
# | * dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c, dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/rtl.c, include/shobjidl.idl
# |
if test "$enable_ntdll_RtlQueryPackageIdentity" -eq 1; then
patch_apply ntdll-RtlQueryPackageIdentity/0001-ntdll-Add-stub-for-RtlQueryPackageIdentity.patch
patch_apply ntdll-RtlQueryPackageIdentity/0002-include-Add-IApplicationActivationManager-interface-.patch
patch_apply ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch
(
printf '%s\n' '+ { "Michael Müller", "ntdll: Add stub for RtlQueryPackageIdentity.", 1 },';
printf '%s\n' '+ { "Michael Müller", "include: Add IApplicationActivationManager interface declaration.", 1 },';
printf '%s\n' '+ { "Michael Müller", "ntdll/tests: Add basic tests for RtlQueryPackageIdentity.", 1 },';
) >> "$patchlist"
fi
# Patchset ntdll-LdrEnumerateLoadedModules
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-RtlQueryPackageIdentity
# |
# | This patchset fixes the following Wine bugs:
# | * [#42296] Implement ntdll.LdrEnumerateLoadedModules
# |
# | Modified files:
# | * dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, dlls/ntdll/tests/rtl.c
# |
if test "$enable_ntdll_LdrEnumerateLoadedModules" -eq 1; then
patch_apply ntdll-LdrEnumerateLoadedModules/0001-ntdll-Implement-LdrEnumerateLoadedModules.patch
(
printf '%s\n' '+ { "Michael Müller", "ntdll: Implement LdrEnumerateLoadedModules.", 1 },';
) >> "$patchlist"
fi
# Patchset ntdll-LdrGetDllHandle
# |
# | Modified files:
@ -5745,6 +5684,22 @@ if test "$enable_ntdll_RtlCaptureStackBackTrace" -eq 1; then
) >> "$patchlist"
fi
# Patchset ntdll-RtlQueryPackageIdentity
# |
# | Modified files:
# | * dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c, dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/rtl.c, include/shobjidl.idl
# |
if test "$enable_ntdll_RtlQueryPackageIdentity" -eq 1; then
patch_apply ntdll-RtlQueryPackageIdentity/0001-ntdll-Add-stub-for-RtlQueryPackageIdentity.patch
patch_apply ntdll-RtlQueryPackageIdentity/0002-include-Add-IApplicationActivationManager-interface-.patch
patch_apply ntdll-RtlQueryPackageIdentity/0003-ntdll-tests-Add-basic-tests-for-RtlQueryPackageIdent.patch
(
printf '%s\n' '+ { "Michael Müller", "ntdll: Add stub for RtlQueryPackageIdentity.", 1 },';
printf '%s\n' '+ { "Michael Müller", "include: Add IApplicationActivationManager interface declaration.", 1 },';
printf '%s\n' '+ { "Michael Müller", "ntdll/tests: Add basic tests for RtlQueryPackageIdentity.", 1 },';
) >> "$patchlist"
fi
# Patchset ntdll-RtlGetUnloadEventTraceEx
# |
# | This patchset has the following (direct or indirect) dependencies:

View File

@ -1,4 +1,4 @@
From 38b073ecbfe6965fb4c67e8398d447f93832956f Mon Sep 17 00:00:00 2001
From 7648652cd46e37da1dc51c3dee6d0dcd953e96a9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 3 Aug 2014 02:23:44 +0200
Subject: shell32: Add support for extra large and jumbo icon lists. (v2)
@ -353,10 +353,10 @@ index bdebcba0e3..fbb8e8811a 100644
+
#endif
diff --git a/dlls/shell32/shellord.c b/dlls/shell32/shellord.c
index 96dd33aa30..917cdee9fc 100644
index f9814997da..5102bf0e47 100644
--- a/dlls/shell32/shellord.c
+++ b/dlls/shell32/shellord.c
@@ -2180,19 +2180,31 @@ void WINAPI SHFlushSFCache(void)
@@ -2146,18 +2146,30 @@ void WINAPI SHFlushSFCache(void)
*/
HRESULT WINAPI SHGetImageList(int iImageList, REFIID riid, void **ppv)
{
@ -395,7 +395,6 @@ index 96dd33aa30..917cdee9fc 100644
-
return HIMAGELIST_QueryInterface(hNew, riid, ppv);
}
--
2.12.2

View File

@ -1 +1 @@
Wine Staging 2.7
Wine Staging 2.8 (unreleased)