[DDK] Hack the IDmaChannel::PhysicalAddress ABI

This commit is contained in:
Bryan Kirk
2022-02-16 01:31:28 +03:00
committed by Victor Perevertkin
parent 3d9ef5c7e7
commit 0944f808f8
+10
View File
@@ -704,6 +704,16 @@ typedef IUnregisterPhysicalConnection *PUNREGISTERPHYSICALCONNECTION;
IDmaChannel Interface
*/
/* C++ ABI HACK: IDmaChannel::PhysicalAddress */
#if defined(__cplusplus) && !defined(_MSC_VER)
#define DEFINE_ABSTRACT_DMACHANNEL_PhysicalAddress \
STDMETHOD_(PHYSICAL_ADDRESS*, PhysicalAddress)( THIS_ PHYSICAL_ADDRESS* pRet ) PURE; \
PHYSICAL_ADDRESS PhysicalAddress() { PHYSICAL_ADDRESS tmp; PhysicalAddress(&tmp); return tmp; }
#else
#define DEFINE_ABSTRACT_DMACHANNEL_PhysicalAddress \
STDMETHOD_(PHYSICAL_ADDRESS, PhysicalAddress)( THIS ) PURE
#endif
#define DEFINE_ABSTRACT_DMACHANNEL() \
STDMETHOD_(NTSTATUS, AllocateBuffer)( THIS_ \
IN ULONG BufferSize, \