From 618e349c72562ed37c10f3c258433796489c3b17 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Wed, 21 Aug 2019 08:19:29 +1000 Subject: [PATCH] Rebase against a64b9c93b1eeef151221b5a100547fdae85435f4 --- ...g-Support-interfaces-IDebugClient2-4.patch | 602 ------------- ...g-Support-IDebugClient5-7-interfaces.patch | 830 ------------------ patches/dbgeng-IDebugClient7/definition | 1 - ...b-implementation-of-EnumSystemFirmwa.patch | 88 -- .../definition | 1 - patches/patchinstall.sh | 43 +- 6 files changed, 1 insertion(+), 1564 deletions(-) delete mode 100644 patches/dbgeng-IDebugClient7/0002-dbgeng-Support-interfaces-IDebugClient2-4.patch delete mode 100644 patches/dbgeng-IDebugClient7/0003-dbgeng-Support-IDebugClient5-7-interfaces.patch delete mode 100644 patches/dbgeng-IDebugClient7/definition delete mode 100644 patches/kernel32-EnumSystemFirmwareTables/0001-kernel32-Add-stub-implementation-of-EnumSystemFirmwa.patch delete mode 100644 patches/kernel32-EnumSystemFirmwareTables/definition diff --git a/patches/dbgeng-IDebugClient7/0002-dbgeng-Support-interfaces-IDebugClient2-4.patch b/patches/dbgeng-IDebugClient7/0002-dbgeng-Support-interfaces-IDebugClient2-4.patch deleted file mode 100644 index 0b58cc36..00000000 --- a/patches/dbgeng-IDebugClient7/0002-dbgeng-Support-interfaces-IDebugClient2-4.patch +++ /dev/null @@ -1,602 +0,0 @@ -From 1c6c38a19c8ceaaf37b595e397d98c9efab2631a Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Fri, 12 Jul 2019 12:15:01 +1000 -Subject: [PATCH 2/3] dbgeng: Support interfaces IDebugClient2-4. - ---- - dlls/dbgeng/dbgeng.c | 245 ++++++++++++++++++++++++++++++++++--------- - 1 file changed, 194 insertions(+), 51 deletions(-) - -diff --git a/dlls/dbgeng/dbgeng.c b/dlls/dbgeng/dbgeng.c -index 9fcce32607..efbdbccfad 100644 ---- a/dlls/dbgeng/dbgeng.c -+++ b/dlls/dbgeng/dbgeng.c -@@ -63,7 +63,7 @@ struct target_process - - struct debug_client - { -- IDebugClient IDebugClient_iface; -+ IDebugClient4 IDebugClient_iface; - IDebugDataSpaces IDebugDataSpaces_iface; - IDebugSymbols3 IDebugSymbols3_iface; - IDebugControl2 IDebugControl2_iface; -@@ -241,7 +241,7 @@ static void debug_client_detach_target(struct target_process *target) - target->handle = NULL; - } - --static struct debug_client *impl_from_IDebugClient(IDebugClient *iface) -+static struct debug_client *impl_from_IDebugClient(IDebugClient4 *iface) - { - return CONTAINING_RECORD(iface, struct debug_client, IDebugClient_iface); - } -@@ -271,13 +271,16 @@ static struct debug_client *impl_from_IDebugSystemObjects(IDebugSystemObjects *i - return CONTAINING_RECORD(iface, struct debug_client, IDebugSystemObjects_iface); - } - --static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient *iface, REFIID riid, void **obj) -+static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient4 *iface, REFIID riid, void **obj) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - - TRACE("%p, %s, %p.\n", iface, debugstr_guid(riid), obj); - - if (IsEqualIID(riid, &IID_IDebugClient) || -+ IsEqualIID(riid, &IID_IDebugClient2) || -+ IsEqualIID(riid, &IID_IDebugClient3) || -+ IsEqualIID(riid, &IID_IDebugClient4) || - IsEqualIID(riid, &IID_IUnknown)) - { - *obj = iface; -@@ -316,7 +319,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient *iface, - return S_OK; - } - --static ULONG STDMETHODCALLTYPE debugclient_AddRef(IDebugClient *iface) -+static ULONG STDMETHODCALLTYPE debugclient_AddRef(IDebugClient4 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - ULONG refcount = InterlockedIncrement(&debug_client->refcount); -@@ -332,7 +335,7 @@ static void debug_target_free(struct target_process *target) - heap_free(target); - } - --static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient *iface) -+static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient4 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - ULONG refcount = InterlockedDecrement(&debug_client->refcount); -@@ -356,14 +359,14 @@ static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient *iface) - return refcount; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AttachKernel(IDebugClient *iface, ULONG flags, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_AttachKernel(IDebugClient4 *iface, ULONG flags, const char *options) - { - FIXME("%p, %#x, %s stub.\n", iface, flags, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugClient *iface, char *buffer, -+static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugClient4 *iface, char *buffer, - ULONG buffer_size, ULONG *options_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, options_size); -@@ -371,14 +374,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugCl - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetKernelConnectionOptions(IDebugClient *iface, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_SetKernelConnectionOptions(IDebugClient4 *iface, const char *options) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient *iface, ULONG flags, const char *options, -+static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient4 *iface, ULONG flags, const char *options, - void *reserved) - { - FIXME("%p, %#x, %s, %p stub.\n", iface, flags, debugstr_a(options), reserved); -@@ -386,7 +389,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient *if - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient *iface, const char *remote_options, -+static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient4 *iface, const char *remote_options, - ULONG64 *server) - { - FIXME("%p, %s, %p stub.\n", iface, debugstr_a(remote_options), server); -@@ -394,14 +397,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient * - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DisconnectProcessServer(IDebugClient *iface, ULONG64 server) -+static HRESULT STDMETHODCALLTYPE debugclient_DisconnectProcessServer(IDebugClient4 *iface, ULONG64 server) - { - FIXME("%p, %s stub.\n", iface, wine_dbgstr_longlong(server)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugClient *iface, ULONG64 server, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugClient4 *iface, ULONG64 server, - ULONG *ids, ULONG count, ULONG *actual_count) - { - FIXME("%p, %s, %p, %u, %p stub.\n", iface, wine_dbgstr_longlong(server), ids, count, actual_count); -@@ -409,7 +412,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugCl - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableName(IDebugClient *iface, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableName(IDebugClient4 *iface, - ULONG64 server, const char *exe_name, ULONG flags, ULONG *id) - { - FIXME("%p, %s, %s, %#x, %p stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(exe_name), flags, id); -@@ -417,7 +420,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutab - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebugClient *iface, ULONG64 server, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebugClient4 *iface, ULONG64 server, - ULONG systemid, ULONG flags, char *exe_name, ULONG exe_name_size, ULONG *actual_exe_name_size, - char *description, ULONG description_size, ULONG *actual_description_size) - { -@@ -427,7 +430,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebug - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient *iface, ULONG64 server, ULONG pid, ULONG flags) -+static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient4 *iface, ULONG64 server, ULONG pid, ULONG flags) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - struct target_process *process; -@@ -451,7 +454,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient *iface, - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient *iface, ULONG64 server, char *cmdline, -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient4 *iface, ULONG64 server, char *cmdline, - ULONG flags) - { - FIXME("%p, %s, %s, %#x stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(cmdline), flags); -@@ -459,7 +462,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient *iface, - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient *iface, ULONG64 server, char *cmdline, -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient4 *iface, ULONG64 server, char *cmdline, - ULONG create_flags, ULONG pid, ULONG attach_flags) - { - FIXME("%p, %s, %s, %#x, %u, %#x stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(cmdline), create_flags, -@@ -468,63 +471,63 @@ static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetProcessOptions(IDebugClient *iface, ULONG *options) -+static HRESULT STDMETHODCALLTYPE debugclient_GetProcessOptions(IDebugClient4 *iface, ULONG *options) - { - FIXME("%p, %p stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AddProcessOptions(IDebugClient *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_AddProcessOptions(IDebugClient4 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_RemoveProcessOptions(IDebugClient *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_RemoveProcessOptions(IDebugClient4 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetProcessOptions(IDebugClient *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_SetProcessOptions(IDebugClient4 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFile(IDebugClient *iface, const char *filename) -+static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFile(IDebugClient4 *iface, const char *filename) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(filename)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile(IDebugClient *iface, const char *filename, ULONG qualifier) -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile(IDebugClient4 *iface, const char *filename, ULONG qualifier) - { - FIXME("%p, %s, %u stub.\n", iface, debugstr_a(filename), qualifier); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ConnectSession(IDebugClient *iface, ULONG flags, ULONG history_limit) -+static HRESULT STDMETHODCALLTYPE debugclient_ConnectSession(IDebugClient4 *iface, ULONG flags, ULONG history_limit) - { - FIXME("%p, %#x, %u stub.\n", iface, flags, history_limit); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_StartServer(IDebugClient *iface, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_StartServer(IDebugClient4 *iface, const char *options) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient *iface, ULONG output_control, -+static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient4 *iface, ULONG output_control, - const char *machine, ULONG flags) - { - FIXME("%p, %u, %s, %#x stub.\n", iface, output_control, debugstr_a(machine), flags); -@@ -532,14 +535,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient *iface, - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_TerminateProcesses(IDebugClient *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_TerminateProcesses(IDebugClient4 *iface) - { - FIXME("%p stub.\n", iface); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient4 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - struct target_process *target; -@@ -554,112 +557,112 @@ static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient *iface - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_EndSession(IDebugClient *iface, ULONG flags) -+static HRESULT STDMETHODCALLTYPE debugclient_EndSession(IDebugClient4 *iface, ULONG flags) - { - FIXME("%p, %#x stub.\n", iface, flags); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetExitCode(IDebugClient *iface, ULONG *code) -+static HRESULT STDMETHODCALLTYPE debugclient_GetExitCode(IDebugClient4 *iface, ULONG *code) - { - FIXME("%p, %p stub.\n", iface, code); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DispatchCallbacks(IDebugClient *iface, ULONG timeout) -+static HRESULT STDMETHODCALLTYPE debugclient_DispatchCallbacks(IDebugClient4 *iface, ULONG timeout) - { - FIXME("%p, %u stub.\n", iface, timeout); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ExitDispatch(IDebugClient *iface, IDebugClient *client) -+static HRESULT STDMETHODCALLTYPE debugclient_ExitDispatch(IDebugClient4 *iface, IDebugClient *client) - { - FIXME("%p, %p stub.\n", iface, client); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateClient(IDebugClient *iface, IDebugClient **client) -+static HRESULT STDMETHODCALLTYPE debugclient_CreateClient(IDebugClient4 *iface, IDebugClient **client) - { - FIXME("%p, %p stub.\n", iface, client); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetInputCallbacks(IDebugClient *iface, IDebugInputCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetInputCallbacks(IDebugClient4 *iface, IDebugInputCallbacks **callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetInputCallbacks(IDebugClient *iface, IDebugInputCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetInputCallbacks(IDebugClient4 *iface, IDebugInputCallbacks *callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputCallbacks(IDebugClient *iface, IDebugOutputCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputCallbacks(IDebugClient4 *iface, IDebugOutputCallbacks **callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputCallbacks(IDebugClient *iface, IDebugOutputCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputCallbacks(IDebugClient4 *iface, IDebugOutputCallbacks *callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputMask(IDebugClient *iface, ULONG *mask) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputMask(IDebugClient4 *iface, ULONG *mask) - { - FIXME("%p, %p stub.\n", iface, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputMask(IDebugClient *iface, ULONG mask) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputMask(IDebugClient4 *iface, ULONG mask) - { - FIXME("%p, %#x stub.\n", iface, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOtherOutputMask(IDebugClient *iface, IDebugClient *client, ULONG *mask) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOtherOutputMask(IDebugClient4 *iface, IDebugClient *client, ULONG *mask) - { - FIXME("%p, %p, %p stub.\n", iface, client, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOtherOutputMask(IDebugClient *iface, IDebugClient *client, ULONG mask) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOtherOutputMask(IDebugClient4 *iface, IDebugClient *client, ULONG mask) - { - FIXME("%p, %p, %#x stub.\n", iface, client, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputWidth(IDebugClient *iface, ULONG *columns) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputWidth(IDebugClient4 *iface, ULONG *columns) - { - FIXME("%p, %p stub.\n", iface, columns); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputWidth(IDebugClient *iface, ULONG columns) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputWidth(IDebugClient4 *iface, ULONG columns) - { - FIXME("%p, %u stub.\n", iface, columns); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient *iface, char *buffer, ULONG buffer_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient4 *iface, char *buffer, ULONG buffer_size, - ULONG *prefix_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, prefix_size); -@@ -667,14 +670,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient *i - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputLinePrefix(IDebugClient *iface, const char *prefix) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputLinePrefix(IDebugClient4 *iface, const char *prefix) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(prefix)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient *iface, char *buffer, ULONG buffer_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient4 *iface, char *buffer, ULONG buffer_size, - ULONG *identity_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, identity_size); -@@ -682,7 +685,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient *iface, ch - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient *iface, ULONG output_control, ULONG flags, -+static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient4 *iface, ULONG output_control, ULONG flags, - const char *format) - { - FIXME("%p, %u, %#x, %s stub.\n", iface, output_control, flags, debugstr_a(format)); -@@ -690,7 +693,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient *iface, - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient *iface, IDebugEventCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient4 *iface, IDebugEventCallbacks **callbacks) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - -@@ -705,7 +708,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient *ifa - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient *iface, IDebugEventCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient4 *iface, IDebugEventCallbacks *callbacks) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - -@@ -719,14 +722,133 @@ static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient *ifa - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_FlushCallbacks(IDebugClient *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_FlushCallbacks(IDebugClient4 *iface) - { - FIXME("%p stub.\n", iface); - - return E_NOTIMPL; - } - --static const IDebugClientVtbl debugclientvtbl = -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile2(IDebugClient4 *iface, const char *dumpfile, ULONG qualifier, -+ ULONG flags, const char *comment) -+{ -+ FIXME("%p, %s, %d, 0x%08x, %s.\n", iface, debugstr_a(dumpfile), qualifier, flags, debugstr_a(comment)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFile(IDebugClient4 *iface, const char *infofile, ULONG type) -+{ -+ FIXME("%p, %s, %d.\n", iface, debugstr_a(infofile), type); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_EndProcessServer(IDebugClient4 *iface, ULONG64 server) -+{ -+ FIXME("%p, %s.\n", iface, wine_dbgstr_longlong(server)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_WaitForProcessServerEnd(IDebugClient4 *iface, ULONG timeout) -+{ -+ FIXME("%p, %d.\n", iface, timeout); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_IsKernelDebuggerEnabled(IDebugClient4 *iface) -+{ -+ FIXME("%p.\n", iface); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_TerminateCurrentProcess(IDebugClient4 *iface) -+{ -+ FIXME("%p.\n", iface); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_DetachCurrentProcess(IDebugClient4 *iface) -+{ -+ FIXME("%p.\n", iface); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_AbandonCurrentProcess(IDebugClient4 *iface) -+{ -+ FIXME("%p.\n", iface); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableNameWide(IDebugClient4 *iface, ULONG64 server, -+ const WCHAR *exename, ULONG flags, ULONG *id) -+{ -+ FIXME("%p, %s, %s, 0x%08x, %p.\n", iface, wine_dbgstr_longlong(server), debugstr_w(exename), flags, id); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescriptionWide(IDebugClient4 *iface, ULONG64 server, ULONG id, -+ ULONG flags, WCHAR *exename, ULONG size, ULONG *actualsize, WCHAR *description, ULONG desc_size, ULONG *actual_desc_size) -+{ -+ FIXME("%p, %s, %d, 0x%08x, %s, %d, %p, %s, %d, %p.\n", iface, wine_dbgstr_longlong(server), id, flags, debugstr_w(exename), size, -+ actualsize, debugstr_w(description), desc_size, actual_desc_size ); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessWide(IDebugClient4 *iface, ULONG64 server, WCHAR *commandline, ULONG flags) -+{ -+ FIXME("%p, %s, %s, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_w(commandline), flags); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttachWide(IDebugClient4 *iface, ULONG64 server, WCHAR *commandline, -+ ULONG flags, ULONG processid, ULONG attachflags) -+{ -+ FIXME("%p, %s, %s, 0x%08x, %d, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_w(commandline), flags, processid, attachflags); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFileWide(IDebugClient4 *iface, const WCHAR *filename, ULONG64 handle) -+{ -+ FIXME("%p, %s, %s.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFileWide(IDebugClient4 *iface, const WCHAR *filename, ULONG64 handle, -+ ULONG qualifier, ULONG flags, const WCHAR *comment) -+{ -+ FIXME("%p, %s, %s, %d, 0x%08x, %s.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle), -+ qualifier, flags, debugstr_w(comment)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFileWide(IDebugClient4 *iface, const WCHAR *filename, -+ ULONG64 handle, ULONG type) -+{ -+ FIXME("%p, %s, %s, %d.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle), type); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetNumberDumpFiles(IDebugClient4 *iface, ULONG *count) -+{ -+ FIXME("%p, %p.\n", iface, count); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFile(IDebugClient4 *iface, ULONG index, char *buffer, ULONG buf_size, -+ ULONG *name_size, ULONG64 *handle, ULONG *type) -+{ -+ FIXME("%p, %d, %p, %d, %p, %p, %p.\n", iface, index, buffer, buf_size, name_size, handle, type); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFileWide(IDebugClient4 *iface, ULONG index, WCHAR *buffer, ULONG buf_size, -+ ULONG *name_size, ULONG64 *handle, ULONG *type) -+{ -+ FIXME("%p, %d, %p, %d, %p, %p, %p.\n", iface, index, buffer, buf_size, name_size, handle, type); -+ return E_NOTIMPL; -+} -+ -+ -+static const IDebugClient4Vtbl debugclientvtbl = - { - debugclient_QueryInterface, - debugclient_AddRef, -@@ -776,6 +898,27 @@ static const IDebugClientVtbl debugclientvtbl = - debugclient_GetEventCallbacks, - debugclient_SetEventCallbacks, - debugclient_FlushCallbacks, -+ /* IDebugClient2 */ -+ debugclient_WriteDumpFile2, -+ debugclient_AddDumpInformationFile, -+ debugclient_EndProcessServer, -+ debugclient_WaitForProcessServerEnd, -+ debugclient_IsKernelDebuggerEnabled, -+ debugclient_TerminateCurrentProcess, -+ debugclient_DetachCurrentProcess, -+ debugclient_AbandonCurrentProcess, -+ /* IDebugClient3 */ -+ debugclient_GetRunningProcessSystemIdByExecutableNameWide, -+ debugclient_GetRunningProcessDescriptionWide, -+ debugclient_CreateProcessWide, -+ debugclient_CreateProcessAndAttachWide, -+ /* IDebugClient4 */ -+ debugclient_OpenDumpFileWide, -+ debugclient_WriteDumpFileWide, -+ debugclient_AddDumpInformationFileWide, -+ debugclient_GetNumberDumpFiles, -+ debugclient_GetDumpFile, -+ debugclient_GetDumpFileWide, - }; - - static HRESULT STDMETHODCALLTYPE debugdataspaces_QueryInterface(IDebugDataSpaces *iface, REFIID riid, void **obj) --- -2.17.1 - diff --git a/patches/dbgeng-IDebugClient7/0003-dbgeng-Support-IDebugClient5-7-interfaces.patch b/patches/dbgeng-IDebugClient7/0003-dbgeng-Support-IDebugClient5-7-interfaces.patch deleted file mode 100644 index 10cc9409..00000000 --- a/patches/dbgeng-IDebugClient7/0003-dbgeng-Support-IDebugClient5-7-interfaces.patch +++ /dev/null @@ -1,830 +0,0 @@ -From ef4dd4d9eae085761270346e84c1668f2162fc83 Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Fri, 12 Jul 2019 14:23:54 +1000 -Subject: [PATCH 3/3] dbgeng: Support IDebugClient5-7 interfaces. - ---- - dlls/dbgeng/dbgeng.c | 371 +++++++++++++++++++++++++++++++++++-------- - 1 file changed, 301 insertions(+), 70 deletions(-) - -diff --git a/dlls/dbgeng/dbgeng.c b/dlls/dbgeng/dbgeng.c -index efbdbccfad..35796dd8a7 100644 ---- a/dlls/dbgeng/dbgeng.c -+++ b/dlls/dbgeng/dbgeng.c -@@ -63,7 +63,7 @@ struct target_process - - struct debug_client - { -- IDebugClient4 IDebugClient_iface; -+ IDebugClient7 IDebugClient_iface; - IDebugDataSpaces IDebugDataSpaces_iface; - IDebugSymbols3 IDebugSymbols3_iface; - IDebugControl2 IDebugControl2_iface; -@@ -241,7 +241,7 @@ static void debug_client_detach_target(struct target_process *target) - target->handle = NULL; - } - --static struct debug_client *impl_from_IDebugClient(IDebugClient4 *iface) -+static struct debug_client *impl_from_IDebugClient(IDebugClient7 *iface) - { - return CONTAINING_RECORD(iface, struct debug_client, IDebugClient_iface); - } -@@ -271,7 +271,7 @@ static struct debug_client *impl_from_IDebugSystemObjects(IDebugSystemObjects *i - return CONTAINING_RECORD(iface, struct debug_client, IDebugSystemObjects_iface); - } - --static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient4 *iface, REFIID riid, void **obj) -+static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient7 *iface, REFIID riid, void **obj) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - -@@ -281,7 +281,10 @@ static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient4 *iface - IsEqualIID(riid, &IID_IDebugClient2) || - IsEqualIID(riid, &IID_IDebugClient3) || - IsEqualIID(riid, &IID_IDebugClient4) || -- IsEqualIID(riid, &IID_IUnknown)) -+ IsEqualIID(riid, &IID_IDebugClient5) || -+ IsEqualIID(riid, &IID_IDebugClient6) || -+ IsEqualIID(riid, &IID_IDebugClient7) || -+ IsEqualIID(riid, &IID_IUnknown)) - { - *obj = iface; - } -@@ -319,7 +322,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_QueryInterface(IDebugClient4 *iface - return S_OK; - } - --static ULONG STDMETHODCALLTYPE debugclient_AddRef(IDebugClient4 *iface) -+static ULONG STDMETHODCALLTYPE debugclient_AddRef(IDebugClient7 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - ULONG refcount = InterlockedIncrement(&debug_client->refcount); -@@ -335,7 +338,7 @@ static void debug_target_free(struct target_process *target) - heap_free(target); - } - --static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient4 *iface) -+static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient7 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - ULONG refcount = InterlockedDecrement(&debug_client->refcount); -@@ -359,14 +362,14 @@ static ULONG STDMETHODCALLTYPE debugclient_Release(IDebugClient4 *iface) - return refcount; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AttachKernel(IDebugClient4 *iface, ULONG flags, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_AttachKernel(IDebugClient7 *iface, ULONG flags, const char *options) - { - FIXME("%p, %#x, %s stub.\n", iface, flags, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugClient4 *iface, char *buffer, -+static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugClient7 *iface, char *buffer, - ULONG buffer_size, ULONG *options_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, options_size); -@@ -374,14 +377,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptions(IDebugCl - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetKernelConnectionOptions(IDebugClient4 *iface, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_SetKernelConnectionOptions(IDebugClient7 *iface, const char *options) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient4 *iface, ULONG flags, const char *options, -+static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient7 *iface, ULONG flags, const char *options, - void *reserved) - { - FIXME("%p, %#x, %s, %p stub.\n", iface, flags, debugstr_a(options), reserved); -@@ -389,7 +392,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServer(IDebugClient4 *i - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient4 *iface, const char *remote_options, -+static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient7 *iface, const char *remote_options, - ULONG64 *server) - { - FIXME("%p, %s, %p stub.\n", iface, debugstr_a(remote_options), server); -@@ -397,14 +400,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServer(IDebugClient4 - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DisconnectProcessServer(IDebugClient4 *iface, ULONG64 server) -+static HRESULT STDMETHODCALLTYPE debugclient_DisconnectProcessServer(IDebugClient7 *iface, ULONG64 server) - { - FIXME("%p, %s stub.\n", iface, wine_dbgstr_longlong(server)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugClient4 *iface, ULONG64 server, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugClient7 *iface, ULONG64 server, - ULONG *ids, ULONG count, ULONG *actual_count) - { - FIXME("%p, %s, %p, %u, %p stub.\n", iface, wine_dbgstr_longlong(server), ids, count, actual_count); -@@ -412,7 +415,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIds(IDebugCl - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableName(IDebugClient4 *iface, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableName(IDebugClient7 *iface, - ULONG64 server, const char *exe_name, ULONG flags, ULONG *id) - { - FIXME("%p, %s, %s, %#x, %p stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(exe_name), flags, id); -@@ -420,7 +423,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutab - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebugClient4 *iface, ULONG64 server, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebugClient7 *iface, ULONG64 server, - ULONG systemid, ULONG flags, char *exe_name, ULONG exe_name_size, ULONG *actual_exe_name_size, - char *description, ULONG description_size, ULONG *actual_description_size) - { -@@ -430,7 +433,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescription(IDebug - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient4 *iface, ULONG64 server, ULONG pid, ULONG flags) -+static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient7 *iface, ULONG64 server, ULONG pid, ULONG flags) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - struct target_process *process; -@@ -454,7 +457,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_AttachProcess(IDebugClient4 *iface, - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient4 *iface, ULONG64 server, char *cmdline, -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient7 *iface, ULONG64 server, char *cmdline, - ULONG flags) - { - FIXME("%p, %s, %s, %#x stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(cmdline), flags); -@@ -462,7 +465,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess(IDebugClient4 *iface, - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient4 *iface, ULONG64 server, char *cmdline, -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient7 *iface, ULONG64 server, char *cmdline, - ULONG create_flags, ULONG pid, ULONG attach_flags) - { - FIXME("%p, %s, %s, %#x, %u, %#x stub.\n", iface, wine_dbgstr_longlong(server), debugstr_a(cmdline), create_flags, -@@ -471,63 +474,63 @@ static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach(IDebugClient - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetProcessOptions(IDebugClient4 *iface, ULONG *options) -+static HRESULT STDMETHODCALLTYPE debugclient_GetProcessOptions(IDebugClient7 *iface, ULONG *options) - { - FIXME("%p, %p stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AddProcessOptions(IDebugClient4 *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_AddProcessOptions(IDebugClient7 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_RemoveProcessOptions(IDebugClient4 *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_RemoveProcessOptions(IDebugClient7 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetProcessOptions(IDebugClient4 *iface, ULONG options) -+static HRESULT STDMETHODCALLTYPE debugclient_SetProcessOptions(IDebugClient7 *iface, ULONG options) - { - FIXME("%p, %#x stub.\n", iface, options); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFile(IDebugClient4 *iface, const char *filename) -+static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFile(IDebugClient7 *iface, const char *filename) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(filename)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile(IDebugClient4 *iface, const char *filename, ULONG qualifier) -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile(IDebugClient7 *iface, const char *filename, ULONG qualifier) - { - FIXME("%p, %s, %u stub.\n", iface, debugstr_a(filename), qualifier); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ConnectSession(IDebugClient4 *iface, ULONG flags, ULONG history_limit) -+static HRESULT STDMETHODCALLTYPE debugclient_ConnectSession(IDebugClient7 *iface, ULONG flags, ULONG history_limit) - { - FIXME("%p, %#x, %u stub.\n", iface, flags, history_limit); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_StartServer(IDebugClient4 *iface, const char *options) -+static HRESULT STDMETHODCALLTYPE debugclient_StartServer(IDebugClient7 *iface, const char *options) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(options)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient4 *iface, ULONG output_control, -+static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient7 *iface, ULONG output_control, - const char *machine, ULONG flags) - { - FIXME("%p, %u, %s, %#x stub.\n", iface, output_control, debugstr_a(machine), flags); -@@ -535,14 +538,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_OutputServers(IDebugClient4 *iface, - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_TerminateProcesses(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_TerminateProcesses(IDebugClient7 *iface) - { - FIXME("%p stub.\n", iface); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient7 *iface) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - struct target_process *target; -@@ -557,112 +560,112 @@ static HRESULT STDMETHODCALLTYPE debugclient_DetachProcesses(IDebugClient4 *ifac - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_EndSession(IDebugClient4 *iface, ULONG flags) -+static HRESULT STDMETHODCALLTYPE debugclient_EndSession(IDebugClient7 *iface, ULONG flags) - { - FIXME("%p, %#x stub.\n", iface, flags); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetExitCode(IDebugClient4 *iface, ULONG *code) -+static HRESULT STDMETHODCALLTYPE debugclient_GetExitCode(IDebugClient7 *iface, ULONG *code) - { - FIXME("%p, %p stub.\n", iface, code); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DispatchCallbacks(IDebugClient4 *iface, ULONG timeout) -+static HRESULT STDMETHODCALLTYPE debugclient_DispatchCallbacks(IDebugClient7 *iface, ULONG timeout) - { - FIXME("%p, %u stub.\n", iface, timeout); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_ExitDispatch(IDebugClient4 *iface, IDebugClient *client) -+static HRESULT STDMETHODCALLTYPE debugclient_ExitDispatch(IDebugClient7 *iface, IDebugClient *client) - { - FIXME("%p, %p stub.\n", iface, client); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateClient(IDebugClient4 *iface, IDebugClient **client) -+static HRESULT STDMETHODCALLTYPE debugclient_CreateClient(IDebugClient7 *iface, IDebugClient **client) - { - FIXME("%p, %p stub.\n", iface, client); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetInputCallbacks(IDebugClient4 *iface, IDebugInputCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetInputCallbacks(IDebugClient7 *iface, IDebugInputCallbacks **callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetInputCallbacks(IDebugClient4 *iface, IDebugInputCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetInputCallbacks(IDebugClient7 *iface, IDebugInputCallbacks *callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputCallbacks(IDebugClient4 *iface, IDebugOutputCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputCallbacks(IDebugClient7 *iface, IDebugOutputCallbacks **callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputCallbacks(IDebugClient4 *iface, IDebugOutputCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputCallbacks(IDebugClient7 *iface, IDebugOutputCallbacks *callbacks) - { - FIXME("%p, %p stub.\n", iface, callbacks); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputMask(IDebugClient4 *iface, ULONG *mask) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputMask(IDebugClient7 *iface, ULONG *mask) - { - FIXME("%p, %p stub.\n", iface, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputMask(IDebugClient4 *iface, ULONG mask) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputMask(IDebugClient7 *iface, ULONG mask) - { - FIXME("%p, %#x stub.\n", iface, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOtherOutputMask(IDebugClient4 *iface, IDebugClient *client, ULONG *mask) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOtherOutputMask(IDebugClient7 *iface, IDebugClient *client, ULONG *mask) - { - FIXME("%p, %p, %p stub.\n", iface, client, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOtherOutputMask(IDebugClient4 *iface, IDebugClient *client, ULONG mask) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOtherOutputMask(IDebugClient7 *iface, IDebugClient *client, ULONG mask) - { - FIXME("%p, %p, %#x stub.\n", iface, client, mask); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputWidth(IDebugClient4 *iface, ULONG *columns) -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputWidth(IDebugClient7 *iface, ULONG *columns) - { - FIXME("%p, %p stub.\n", iface, columns); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputWidth(IDebugClient4 *iface, ULONG columns) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputWidth(IDebugClient7 *iface, ULONG columns) - { - FIXME("%p, %u stub.\n", iface, columns); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient4 *iface, char *buffer, ULONG buffer_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient7 *iface, char *buffer, ULONG buffer_size, - ULONG *prefix_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, prefix_size); -@@ -670,14 +673,14 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefix(IDebugClient4 * - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetOutputLinePrefix(IDebugClient4 *iface, const char *prefix) -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputLinePrefix(IDebugClient7 *iface, const char *prefix) - { - FIXME("%p, %s stub.\n", iface, debugstr_a(prefix)); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient4 *iface, char *buffer, ULONG buffer_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient7 *iface, char *buffer, ULONG buffer_size, - ULONG *identity_size) - { - FIXME("%p, %p, %u, %p stub.\n", iface, buffer, buffer_size, identity_size); -@@ -685,7 +688,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetIdentity(IDebugClient4 *iface, c - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient4 *iface, ULONG output_control, ULONG flags, -+static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient7 *iface, ULONG output_control, ULONG flags, - const char *format) - { - FIXME("%p, %u, %#x, %s stub.\n", iface, output_control, flags, debugstr_a(format)); -@@ -693,7 +696,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentity(IDebugClient4 *iface - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient4 *iface, IDebugEventCallbacks **callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient7 *iface, IDebugEventCallbacks **callbacks) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - -@@ -708,7 +711,7 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacks(IDebugClient4 *if - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient4 *iface, IDebugEventCallbacks *callbacks) -+static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient7 *iface, IDebugEventCallbacks *callbacks) - { - struct debug_client *debug_client = impl_from_IDebugClient(iface); - -@@ -722,70 +725,70 @@ static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacks(IDebugClient4 *if - return S_OK; - } - --static HRESULT STDMETHODCALLTYPE debugclient_FlushCallbacks(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_FlushCallbacks(IDebugClient7 *iface) - { - FIXME("%p stub.\n", iface); - - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile2(IDebugClient4 *iface, const char *dumpfile, ULONG qualifier, -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFile2(IDebugClient7 *iface, const char *dumpfile, ULONG qualifier, - ULONG flags, const char *comment) - { - FIXME("%p, %s, %d, 0x%08x, %s.\n", iface, debugstr_a(dumpfile), qualifier, flags, debugstr_a(comment)); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFile(IDebugClient4 *iface, const char *infofile, ULONG type) -+static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFile(IDebugClient7 *iface, const char *infofile, ULONG type) - { - FIXME("%p, %s, %d.\n", iface, debugstr_a(infofile), type); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_EndProcessServer(IDebugClient4 *iface, ULONG64 server) -+static HRESULT STDMETHODCALLTYPE debugclient_EndProcessServer(IDebugClient7 *iface, ULONG64 server) - { - FIXME("%p, %s.\n", iface, wine_dbgstr_longlong(server)); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_WaitForProcessServerEnd(IDebugClient4 *iface, ULONG timeout) -+static HRESULT STDMETHODCALLTYPE debugclient_WaitForProcessServerEnd(IDebugClient7 *iface, ULONG timeout) - { - FIXME("%p, %d.\n", iface, timeout); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_IsKernelDebuggerEnabled(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_IsKernelDebuggerEnabled(IDebugClient7 *iface) - { - FIXME("%p.\n", iface); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_TerminateCurrentProcess(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_TerminateCurrentProcess(IDebugClient7 *iface) - { - FIXME("%p.\n", iface); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_DetachCurrentProcess(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_DetachCurrentProcess(IDebugClient7 *iface) - { - FIXME("%p.\n", iface); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AbandonCurrentProcess(IDebugClient4 *iface) -+static HRESULT STDMETHODCALLTYPE debugclient_AbandonCurrentProcess(IDebugClient7 *iface) - { - FIXME("%p.\n", iface); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableNameWide(IDebugClient4 *iface, ULONG64 server, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessSystemIdByExecutableNameWide(IDebugClient7 *iface, ULONG64 server, - const WCHAR *exename, ULONG flags, ULONG *id) - { - FIXME("%p, %s, %s, 0x%08x, %p.\n", iface, wine_dbgstr_longlong(server), debugstr_w(exename), flags, id); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescriptionWide(IDebugClient4 *iface, ULONG64 server, ULONG id, -+static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescriptionWide(IDebugClient7 *iface, ULONG64 server, ULONG id, - ULONG flags, WCHAR *exename, ULONG size, ULONG *actualsize, WCHAR *description, ULONG desc_size, ULONG *actual_desc_size) - { - FIXME("%p, %s, %d, 0x%08x, %s, %d, %p, %s, %d, %p.\n", iface, wine_dbgstr_longlong(server), id, flags, debugstr_w(exename), size, -@@ -793,26 +796,26 @@ static HRESULT STDMETHODCALLTYPE debugclient_GetRunningProcessDescriptionWide(ID - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessWide(IDebugClient4 *iface, ULONG64 server, WCHAR *commandline, ULONG flags) -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessWide(IDebugClient7 *iface, ULONG64 server, WCHAR *commandline, ULONG flags) - { - FIXME("%p, %s, %s, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_w(commandline), flags); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttachWide(IDebugClient4 *iface, ULONG64 server, WCHAR *commandline, -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttachWide(IDebugClient7 *iface, ULONG64 server, WCHAR *commandline, - ULONG flags, ULONG processid, ULONG attachflags) - { - FIXME("%p, %s, %s, 0x%08x, %d, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_w(commandline), flags, processid, attachflags); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFileWide(IDebugClient4 *iface, const WCHAR *filename, ULONG64 handle) -+static HRESULT STDMETHODCALLTYPE debugclient_OpenDumpFileWide(IDebugClient7 *iface, const WCHAR *filename, ULONG64 handle) - { - FIXME("%p, %s, %s.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle)); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFileWide(IDebugClient4 *iface, const WCHAR *filename, ULONG64 handle, -+static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFileWide(IDebugClient7 *iface, const WCHAR *filename, ULONG64 handle, - ULONG qualifier, ULONG flags, const WCHAR *comment) - { - FIXME("%p, %s, %s, %d, 0x%08x, %s.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle), -@@ -820,35 +823,229 @@ static HRESULT STDMETHODCALLTYPE debugclient_WriteDumpFileWide(IDebugClient4 *if - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFileWide(IDebugClient4 *iface, const WCHAR *filename, -+static HRESULT STDMETHODCALLTYPE debugclient_AddDumpInformationFileWide(IDebugClient7 *iface, const WCHAR *filename, - ULONG64 handle, ULONG type) - { - FIXME("%p, %s, %s, %d.\n", iface, debugstr_w(filename), wine_dbgstr_longlong(handle), type); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetNumberDumpFiles(IDebugClient4 *iface, ULONG *count) -+static HRESULT STDMETHODCALLTYPE debugclient_GetNumberDumpFiles(IDebugClient7 *iface, ULONG *count) - { - FIXME("%p, %p.\n", iface, count); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFile(IDebugClient4 *iface, ULONG index, char *buffer, ULONG buf_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFile(IDebugClient7 *iface, ULONG index, char *buffer, ULONG buf_size, - ULONG *name_size, ULONG64 *handle, ULONG *type) - { - FIXME("%p, %d, %p, %d, %p, %p, %p.\n", iface, index, buffer, buf_size, name_size, handle, type); - return E_NOTIMPL; - } - --static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFileWide(IDebugClient4 *iface, ULONG index, WCHAR *buffer, ULONG buf_size, -+static HRESULT STDMETHODCALLTYPE debugclient_GetDumpFileWide(IDebugClient7 *iface, ULONG index, WCHAR *buffer, ULONG buf_size, - ULONG *name_size, ULONG64 *handle, ULONG *type) - { - FIXME("%p, %d, %p, %d, %p, %p, %p.\n", iface, index, buffer, buf_size, name_size, handle, type); - return E_NOTIMPL; - } - -+static HRESULT STDMETHODCALLTYPE debugclient_AttachKernelWide(IDebugClient7 *iface, ULONG flags, const WCHAR *options) -+{ -+ FIXME("%p, 0x%08x, %s.\n", iface, flags, debugstr_w(options)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetKernelConnectionOptionsWide(IDebugClient7 *iface, WCHAR *buffer, -+ ULONG buf_size, ULONG *size) -+{ -+ FIXME("%p, %p, %d, %p.\n", iface, buffer, buf_size, size); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetKernelConnectionOptionsWide(IDebugClient7 *iface, const WCHAR *options) -+{ -+ FIXME("%p, %p.\n", iface, options); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_StartProcessServerWide(IDebugClient7 *iface, ULONG flags, const WCHAR *options, void *reserved) -+{ -+ FIXME("%p, 0x%08x, %s, %p.\n", iface, flags, debugstr_w(options), reserved); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_ConnectProcessServerWide(IDebugClient7 *iface, const WCHAR *options, ULONG64 *server) -+{ -+ FIXME("%p, %s, %p.\n", iface, debugstr_w(options), server); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_StartServerWide(IDebugClient7 *iface, const WCHAR *options) -+{ -+ FIXME("%p, %s.\n", iface, debugstr_w(options)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_OutputServersWide(IDebugClient7 *iface, ULONG control, const WCHAR *machine, ULONG flags) -+{ -+ FIXME("%p, %d, %s, 0x%08x.\n", iface, control, debugstr_w(machine), flags); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputCallbacksWide(IDebugClient7 *iface, IDebugOutputCallbacksWide **callbacks) -+{ -+ FIXME("%p, %p.\n", iface, callbacks); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputCallbacksWide(IDebugClient7 *iface, IDebugOutputCallbacksWide *callbacks) -+{ -+ FIXME("%p, %p.\n", iface, callbacks); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetOutputLinePrefixWide(IDebugClient7 *iface, WCHAR *buffer, ULONG buf_size, ULONG *size) -+{ -+ FIXME("%p, %p, %d, %p.\n", iface, buffer, buf_size, size); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetOutputLinePrefixWide(IDebugClient7 *iface, const WCHAR *prefix) -+{ -+ FIXME("%p, %s.\n", iface, debugstr_w(prefix)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetIdentityWide(IDebugClient7 *iface, WCHAR *buffer, ULONG buf_size, ULONG *identity) -+{ -+ FIXME("%p, %p, %d, %p.\n", iface, buffer, buf_size, identity); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_OutputIdentityWide(IDebugClient7 *iface, ULONG control, ULONG flags, const WCHAR *format) -+{ -+ FIXME("%p, %d, 0x%08x, %s.\n", iface, control, flags, debugstr_w(format)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetEventCallbacksWide(IDebugClient7 *iface, IDebugEventCallbacksWide **callbacks) -+{ -+ FIXME("%p, %p .\n", iface, callbacks); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetEventCallbacksWide(IDebugClient7 *iface, IDebugEventCallbacksWide *callbacks) -+{ -+ FIXME("%p .\n", iface); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess2(IDebugClient7 *iface, ULONG64 server, char *command, void *options, -+ ULONG buf_size, const char *initial, const char *environment) -+{ -+ FIXME("%p %s, %s, %p, %d, %s, %s.\n", iface, wine_dbgstr_longlong(server), debugstr_a(command), options, -+ buf_size, debugstr_a(initial), debugstr_a(environment)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcess2Wide(IDebugClient7 *iface, ULONG64 server, WCHAR *command, void *options, -+ ULONG size, const WCHAR *initial, const WCHAR *environment) -+{ -+ FIXME("%p %s, %s, %p, %d, %s, %s.\n", iface, wine_dbgstr_longlong(server), debugstr_w(command), options, -+ size, debugstr_w(initial), debugstr_w(environment)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach2(IDebugClient7 *iface, ULONG64 server, char *command, -+ void *options, ULONG buf_size, const char *initial, const char *environment, ULONG processid, ULONG flags) -+{ -+ FIXME("%p %s, %s, %p, %d, %s, %s, %d, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_a(command), options, -+ buf_size, debugstr_a(initial), debugstr_a(environment), processid, flags); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_CreateProcessAndAttach2Wide(IDebugClient7 *iface, ULONG64 server, WCHAR *command, -+ void *buffer, ULONG buf_size, const WCHAR *initial, const WCHAR *environment, ULONG processid, ULONG flags) -+{ -+ FIXME("%p %s, %s, %p, %d, %s, %s, %d, 0x%08x.\n", iface, wine_dbgstr_longlong(server), debugstr_w(command), buffer, -+ buf_size, debugstr_w(initial), debugstr_w(environment), processid, flags); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_PushOutputLinePrefix(IDebugClient7 *iface, const char *prefix, ULONG64 *handle) -+{ -+ FIXME("%p, %p.\n", iface, handle); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_PushOutputLinePrefixWide(IDebugClient7 *iface, const WCHAR *prefix, ULONG64 *handle) -+{ -+ FIXME("%p, %p.\n", iface, handle); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_PopOutputLinePrefix(IDebugClient7 *iface, ULONG64 handle) -+{ -+ FIXME("%p, %s.\n", iface, wine_dbgstr_longlong(handle)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetNumberInputCallbacks(IDebugClient7 *iface, ULONG *count) -+{ -+ FIXME("%p, %p.\n", iface, count); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetNumberOutputCallbacks(IDebugClient7 *iface, ULONG *count) -+{ -+ FIXME("%p, %p.\n", iface, count); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetNumberEventCallbacks(IDebugClient7 *iface, ULONG flags, ULONG *count) -+{ -+ FIXME("%p, 0x%08x, %p.\n", iface, flags, count); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetQuitLockString(IDebugClient7 *iface, char *buffer, ULONG buf_size, ULONG *size) -+{ -+ FIXME("%p, %s, %d, %p.\n", iface, debugstr_a(buffer), buf_size, size); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetQuitLockString(IDebugClient7 *iface, char *string) -+{ -+ FIXME("%p, %s.\n", iface, debugstr_a(string)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_GetQuitLockStringWide(IDebugClient7 *iface, WCHAR *buffer, ULONG buf_size, ULONG *size) -+{ -+ FIXME("%p, %s, %d, %p.\n", iface, debugstr_w(buffer), buf_size, size); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetQuitLockStringWide(IDebugClient7 *iface, const WCHAR *string) -+{ -+ FIXME("%p, %s.\n", iface, debugstr_w(string)); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetEventContextCallbacks(IDebugClient7 *iface, IDebugEventContextCallbacks *callbacks) -+{ -+ FIXME("%p, %p.\n", iface, callbacks); -+ return E_NOTIMPL; -+} -+ -+static HRESULT STDMETHODCALLTYPE debugclient_SetClientContext(IDebugClient7 *iface, void *context, ULONG size) -+{ -+ FIXME("%p, %p, %d.\n", iface, context, size); -+ return E_NOTIMPL; -+} - --static const IDebugClient4Vtbl debugclientvtbl = -+static const IDebugClient7Vtbl debugclientvtbl = - { - debugclient_QueryInterface, - debugclient_AddRef, -@@ -919,6 +1116,40 @@ static const IDebugClient4Vtbl debugclientvtbl = - debugclient_GetNumberDumpFiles, - debugclient_GetDumpFile, - debugclient_GetDumpFileWide, -+ /* IDebugClient5 */ -+ debugclient_AttachKernelWide, -+ debugclient_GetKernelConnectionOptionsWide, -+ debugclient_SetKernelConnectionOptionsWide, -+ debugclient_StartProcessServerWide, -+ debugclient_ConnectProcessServerWide, -+ debugclient_StartServerWide, -+ debugclient_OutputServersWide, -+ debugclient_GetOutputCallbacksWide, -+ debugclient_SetOutputCallbacksWide, -+ debugclient_GetOutputLinePrefixWide, -+ debugclient_SetOutputLinePrefixWide, -+ debugclient_GetIdentityWide, -+ debugclient_OutputIdentityWide, -+ debugclient_GetEventCallbacksWide, -+ debugclient_SetEventCallbacksWide, -+ debugclient_CreateProcess2, -+ debugclient_CreateProcess2Wide, -+ debugclient_CreateProcessAndAttach2, -+ debugclient_CreateProcessAndAttach2Wide, -+ debugclient_PushOutputLinePrefix, -+ debugclient_PushOutputLinePrefixWide, -+ debugclient_PopOutputLinePrefix, -+ debugclient_GetNumberInputCallbacks, -+ debugclient_GetNumberOutputCallbacks, -+ debugclient_GetNumberEventCallbacks, -+ debugclient_GetQuitLockString, -+ debugclient_SetQuitLockString, -+ debugclient_GetQuitLockStringWide, -+ debugclient_SetQuitLockStringWide, -+ /* IDebugClient6 */ -+ debugclient_SetEventContextCallbacks, -+ /* IDebugClient7 */ -+ debugclient_SetClientContext, - }; - - static HRESULT STDMETHODCALLTYPE debugdataspaces_QueryInterface(IDebugDataSpaces *iface, REFIID riid, void **obj) --- -2.17.1 - diff --git a/patches/dbgeng-IDebugClient7/definition b/patches/dbgeng-IDebugClient7/definition deleted file mode 100644 index 3435964a..00000000 --- a/patches/dbgeng-IDebugClient7/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [44958] dbgeng: Support IDebugClient7 interface. diff --git a/patches/kernel32-EnumSystemFirmwareTables/0001-kernel32-Add-stub-implementation-of-EnumSystemFirmwa.patch b/patches/kernel32-EnumSystemFirmwareTables/0001-kernel32-Add-stub-implementation-of-EnumSystemFirmwa.patch deleted file mode 100644 index 352b4a97..00000000 --- a/patches/kernel32-EnumSystemFirmwareTables/0001-kernel32-Add-stub-implementation-of-EnumSystemFirmwa.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 81e115ab673af02b03e8026ba644313e9d786aea Mon Sep 17 00:00:00 2001 -From: Steven Bell -Date: Tue, 30 Jul 2019 14:33:23 -0700 -Subject: [PATCH] kernel32: Add stub implementation of - EnumSystemFirmwareTables. - -A recent change to the game Everquest adds a call to EnumSystemFirmwareTables. -This of course causes the game to crash. Adding this stub call restores full -functionality to the game. - -Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47523 -Signed-off-by: Steven Bell ---- - .../api-ms-win-core-sysinfo-l1-2-0.spec | 2 +- - .../api-ms-win-core-sysinfo-l1-2-1.spec | 2 +- - dlls/kernel32/cpu.c | 10 ++++++++++ - dlls/kernel32/kernel32.spec | 2 +- - dlls/kernelbase/kernelbase.spec | 2 +- - 5 files changed, 14 insertions(+), 4 deletions(-) - -diff --git a/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec b/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec -index 9b0567412d..1103427d4d 100644 ---- a/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec -+++ b/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec -@@ -1,4 +1,4 @@ --@ stub EnumSystemFirmwareTables -+@ stdcall EnumSystemFirmwareTables(long ptr long) kernel32.EnumSystemFirmwareTables - @ stdcall GetComputerNameExA(long ptr ptr) kernel32.GetComputerNameExA - @ stdcall GetComputerNameExW(long ptr ptr) kernel32.GetComputerNameExW - @ stdcall GetLocalTime(ptr) kernel32.GetLocalTime -diff --git a/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec b/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec -index 6da2f25fa1..9a89b4b57a 100644 ---- a/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec -+++ b/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec -@@ -1,5 +1,5 @@ - @ stub DnsHostnameToComputerNameExW --@ stub EnumSystemFirmwareTables -+@ stdcall EnumSystemFirmwareTables(long ptr long) kernel32.EnumSystemFirmwareTables - @ stdcall GetComputerNameExA(long ptr ptr) kernel32.GetComputerNameExA - @ stdcall GetComputerNameExW(long ptr ptr) kernel32.GetComputerNameExW - @ stdcall GetLocalTime(ptr) kernel32.GetLocalTime -diff --git a/dlls/kernel32/cpu.c b/dlls/kernel32/cpu.c -index 7668a10ea4..2da36bdb54 100644 ---- a/dlls/kernel32/cpu.c -+++ b/dlls/kernel32/cpu.c -@@ -365,3 +365,13 @@ UINT WINAPI GetSystemFirmwareTable(DWORD provider, DWORD id, void *buffer, DWORD - HeapFree(GetProcessHeap(), 0, sfti); - return buffer_size; - } -+ -+ -+/*********************************************************************** -+ * EnumSystemFirmwareTables (KERNEL32.@) -+ */ -+UINT WINAPI EnumSystemFirmwareTables(DWORD provider, void *buffer, DWORD size) -+{ -+ FIXME("%d, %p, %d stub, always returning 0\n", provider, buffer, size); -+ return 0; -+} -diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec -index 016c3022dc..fb8e4c9642 100644 ---- a/dlls/kernel32/kernel32.spec -+++ b/dlls/kernel32/kernel32.spec -@@ -418,7 +418,7 @@ - @ stdcall EnumResourceTypesW(long ptr long) - @ stdcall EnumSystemCodePagesA(ptr long) - @ stdcall EnumSystemCodePagesW(ptr long) --# @ stub EnumSystemFirmwareTables -+@ stdcall EnumSystemFirmwareTables(long ptr long) - @ stdcall EnumSystemGeoID(long long ptr) - @ stdcall EnumSystemLanguageGroupsA(ptr long ptr) - @ stdcall EnumSystemLanguageGroupsW(ptr long ptr) -diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec -index 4bb2b55cde..91e78889e6 100644 ---- a/dlls/kernelbase/kernelbase.spec -+++ b/dlls/kernelbase/kernelbase.spec -@@ -312,7 +312,7 @@ - @ stdcall EnumResourceTypesExA(long ptr long long long) - @ stdcall EnumResourceTypesExW(long ptr long long long) - @ stdcall EnumSystemCodePagesW(ptr long) kernel32.EnumSystemCodePagesW --# @ stub EnumSystemFirmwareTables -+@ stdcall EnumSystemFirmwareTables(long ptr long) kernel32.EnumSystemFirmwareTables - @ stdcall EnumSystemGeoID(long long ptr) kernel32.EnumSystemGeoID - @ stdcall EnumSystemLanguageGroupsW(ptr long ptr) kernel32.EnumSystemLanguageGroupsW - @ stdcall EnumSystemLocalesA(ptr long) kernel32.EnumSystemLocalesA --- -2.17.1 - diff --git a/patches/kernel32-EnumSystemFirmwareTables/definition b/patches/kernel32-EnumSystemFirmwareTables/definition deleted file mode 100644 index 8b0cc923..00000000 --- a/patches/kernel32-EnumSystemFirmwareTables/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [47523] kernel32: Add stub implementation of EnumSystemFirmwareTables. diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 742a8d39..23d3095e 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "5ea3a044b83c4cd55a3c647f5e80511a85b9f536" + echo "a64b9c93b1eeef151221b5a100547fdae85435f4" } # Show version information @@ -120,7 +120,6 @@ patch_enable_all () enable_d3dx9_36_Optimize_Inplace="$1" enable_d3dx9_36_Texture_Align="$1" enable_d3dx9_36_UpdateSkinnedMesh="$1" - enable_dbgeng_IDebugClient7="$1" enable_dbghelp_Debug_Symbols="$1" enable_ddraw_Device_Caps="$1" enable_ddraw_EnumSurfaces="$1" @@ -159,7 +158,6 @@ patch_enable_all () enable_iphlpapi_System_Ping="$1" enable_kernel32_CopyFileEx="$1" enable_kernel32_Debugger="$1" - enable_kernel32_EnumSystemFirmwareTables="$1" enable_kernel32_FindFirstFile="$1" enable_kernel32_Job_Tests="$1" enable_kernel32_K32GetPerformanceInfo="$1" @@ -493,9 +491,6 @@ patch_enable () d3dx9_36-UpdateSkinnedMesh) enable_d3dx9_36_UpdateSkinnedMesh="$2" ;; - dbgeng-IDebugClient7) - enable_dbgeng_IDebugClient7="$2" - ;; dbghelp-Debug_Symbols) enable_dbghelp_Debug_Symbols="$2" ;; @@ -610,9 +605,6 @@ patch_enable () kernel32-Debugger) enable_kernel32_Debugger="$2" ;; - kernel32-EnumSystemFirmwareTables) - enable_kernel32_EnumSystemFirmwareTables="$2" - ;; kernel32-FindFirstFile) enable_kernel32_FindFirstFile="$2" ;; @@ -2979,23 +2971,6 @@ if test "$enable_d3dx9_36_UpdateSkinnedMesh" -eq 1; then ) >> "$patchlist" fi -# Patchset dbgeng-IDebugClient7 -# | -# | This patchset fixes the following Wine bugs: -# | * [#44958] dbgeng: Support IDebugClient7 interface. -# | -# | Modified files: -# | * dlls/dbgeng/dbgeng.c -# | -if test "$enable_dbgeng_IDebugClient7" -eq 1; then - patch_apply dbgeng-IDebugClient7/0002-dbgeng-Support-interfaces-IDebugClient2-4.patch - patch_apply dbgeng-IDebugClient7/0003-dbgeng-Support-IDebugClient5-7-interfaces.patch - ( - printf '%s\n' '+ { "Alistair Leslie-Hughes", "dbgeng: Support interfaces IDebugClient2-4.", 1 },'; - printf '%s\n' '+ { "Alistair Leslie-Hughes", "dbgeng: Support IDebugClient5-7 interfaces.", 1 },'; - ) >> "$patchlist" -fi - # Patchset dbghelp-Debug_Symbols # | # | Modified files: @@ -4302,22 +4277,6 @@ if test "$enable_kernel32_Debugger" -eq 1; then ) >> "$patchlist" fi -# Patchset kernel32-EnumSystemFirmwareTables -# | -# | This patchset fixes the following Wine bugs: -# | * [#47523] kernel32: Add stub implementation of EnumSystemFirmwareTables. -# | -# | Modified files: -# | * dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec, dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win- -# | core-sysinfo-l1-2-1.spec, dlls/kernel32/cpu.c, dlls/kernel32/kernel32.spec, dlls/kernelbase/kernelbase.spec -# | -if test "$enable_kernel32_EnumSystemFirmwareTables" -eq 1; then - patch_apply kernel32-EnumSystemFirmwareTables/0001-kernel32-Add-stub-implementation-of-EnumSystemFirmwa.patch - ( - printf '%s\n' '+ { "Steven Bell", "kernel32: Add stub implementation of EnumSystemFirmwareTables.", 1 },'; - ) >> "$patchlist" -fi - # Patchset kernel32-FindFirstFile # | # | This patchset fixes the following Wine bugs: