Module: wine Branch: master Commit: 9fc9c91bf47948f2f35699fe2956955d609198d5 URL: https://gitlab.winehq.org/wine/wine/-/commit/9fc9c91bf47948f2f35699fe2956955...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Dec 7 11:50:06 2022 +0100
include: Use proper dllimports for rpcrt4 functions.
---
dlls/rpcrt4/Makefile.in | 2 +- include/rpc.h | 9 ++++++++- include/rpcproxy.h | 40 ++++++++++++++-------------------------- 3 files changed, 23 insertions(+), 28 deletions(-)
diff --git a/dlls/rpcrt4/Makefile.in b/dlls/rpcrt4/Makefile.in index 822e6ded35d..2aa2a5376aa 100644 --- a/dlls/rpcrt4/Makefile.in +++ b/dlls/rpcrt4/Makefile.in @@ -1,4 +1,4 @@ -EXTRADEFS = -DMSWMSG +EXTRADEFS = -D_RPCRT4_ -DMSWMSG MODULE = rpcrt4.dll IMPORTLIB = rpcrt4 IMPORTS = uuid advapi32 diff --git a/include/rpc.h b/include/rpc.h index 9fa1c1ef161..0b029532655 100644 --- a/include/rpc.h +++ b/include/rpc.h @@ -38,9 +38,16 @@ #define __RPC_USER __stdcall #define __RPC_STUB __stdcall #define RPC_ENTRY __stdcall + +#ifndef RPCRTAPI +#if !defined(_RPCRT4_) && !defined(_KRPCENV_) +#define RPCRTAPI DECLSPEC_IMPORT +#else #define RPCRTAPI -typedef LONG RPC_STATUS; +#endif +#endif
+typedef LONG RPC_STATUS; typedef void* I_RPC_HANDLE;
#include <rpcdce.h> diff --git a/include/rpcproxy.h b/include/rpcproxy.h index 34321d05064..87bb7022629 100644 --- a/include/rpcproxy.h +++ b/include/rpcproxy.h @@ -125,34 +125,22 @@ typedef struct tagCStdPSFactoryBuffer
#define STUB_FORWARDING_FUNCTION NdrStubForwardingFunction
-ULONG STDMETHODCALLTYPE CStdStubBuffer2_Release(IRpcStubBuffer *This) DECLSPEC_HIDDEN; -ULONG STDMETHODCALLTYPE NdrCStdStubBuffer2_Release(IRpcStubBuffer *This, IPSFactoryBuffer *pPSF); - #define CStdStubBuffer_DELEGATING_METHODS 0, 0, CStdStubBuffer2_Release, 0, 0, 0, 0, 0, 0, 0
- -HRESULT WINAPI - CStdStubBuffer_QueryInterface( IRpcStubBuffer *This, REFIID riid, void **ppvObject ); -ULONG WINAPI - CStdStubBuffer_AddRef( IRpcStubBuffer *This ); -ULONG WINAPI - CStdStubBuffer_Release( IRpcStubBuffer *This ) DECLSPEC_HIDDEN; -ULONG WINAPI - NdrCStdStubBuffer_Release( IRpcStubBuffer *This, IPSFactoryBuffer *pPSF ); -HRESULT WINAPI - CStdStubBuffer_Connect( IRpcStubBuffer *This, IUnknown *pUnkServer ); -void WINAPI - CStdStubBuffer_Disconnect( IRpcStubBuffer *This ); -HRESULT WINAPI - CStdStubBuffer_Invoke( IRpcStubBuffer *This, RPCOLEMESSAGE *pRpcMsg, IRpcChannelBuffer *pRpcChannelBuffer ); -IRpcStubBuffer * WINAPI - CStdStubBuffer_IsIIDSupported( IRpcStubBuffer *This, REFIID riid ); -ULONG WINAPI - CStdStubBuffer_CountRefs( IRpcStubBuffer *This ); -HRESULT WINAPI - CStdStubBuffer_DebugServerQueryInterface( IRpcStubBuffer *This, void **ppv ); -void WINAPI - CStdStubBuffer_DebugServerRelease( IRpcStubBuffer *This, void *pv ); +RPCRTAPI HRESULT WINAPI CStdStubBuffer_QueryInterface( IRpcStubBuffer *This, REFIID riid, void **ppvObject ); +RPCRTAPI ULONG WINAPI CStdStubBuffer_AddRef( IRpcStubBuffer *This ); +RPCRTAPI HRESULT WINAPI CStdStubBuffer_Connect( IRpcStubBuffer *This, IUnknown *pUnkServer ); +RPCRTAPI void WINAPI CStdStubBuffer_Disconnect( IRpcStubBuffer *This ); +RPCRTAPI HRESULT WINAPI CStdStubBuffer_Invoke( IRpcStubBuffer *This, RPCOLEMESSAGE *pRpcMsg, IRpcChannelBuffer *pRpcChannelBuffer ); +RPCRTAPI IRpcStubBuffer * WINAPI CStdStubBuffer_IsIIDSupported( IRpcStubBuffer *This, REFIID riid ); +RPCRTAPI ULONG WINAPI CStdStubBuffer_CountRefs( IRpcStubBuffer *This ); +RPCRTAPI HRESULT WINAPI CStdStubBuffer_DebugServerQueryInterface( IRpcStubBuffer *This, void **ppv ); +RPCRTAPI void WINAPI CStdStubBuffer_DebugServerRelease( IRpcStubBuffer *This, void *pv ); +RPCRTAPI ULONG WINAPI NdrCStdStubBuffer_Release( IRpcStubBuffer *This, IPSFactoryBuffer *pPSF ); +RPCRTAPI ULONG WINAPI NdrCStdStubBuffer2_Release(IRpcStubBuffer *This, IPSFactoryBuffer *pPSF); + +ULONG STDMETHODCALLTYPE CStdStubBuffer_Release( IRpcStubBuffer *This ) DECLSPEC_HIDDEN; +ULONG STDMETHODCALLTYPE CStdStubBuffer2_Release(IRpcStubBuffer *This) DECLSPEC_HIDDEN;
#define CStdStubBuffer_METHODS \ CStdStubBuffer_QueryInterface, \