summaryrefslogtreecommitdiff
path: root/src/libw32dll/DirectShow/iunk.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libw32dll/DirectShow/iunk.h')
-rw-r--r--src/libw32dll/DirectShow/iunk.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/libw32dll/DirectShow/iunk.h b/src/libw32dll/DirectShow/iunk.h
index 6dbf00ffa..7998011cd 100644
--- a/src/libw32dll/DirectShow/iunk.h
+++ b/src/libw32dll/DirectShow/iunk.h
@@ -2,10 +2,9 @@
#define DS_IUNK_H
#include "guids.h"
-#include <stdlib.h>
#define INHERIT_IUNKNOWN() \
- long STDCALL ( *QueryInterface )(IUnknown * This, GUID* riid, void **ppvObject); \
+ long STDCALL ( *QueryInterface )(IUnknown * This, const GUID* riid, void **ppvObject); \
long STDCALL ( *AddRef )(IUnknown * This); \
long STDCALL ( *Release )(IUnknown * This);
@@ -14,12 +13,12 @@
#define IMPLEMENT_IUNKNOWN(CLASSNAME) \
static long STDCALL CLASSNAME ## _QueryInterface(IUnknown * This, \
- GUID* riid, void **ppvObject) \
+ const GUID* riid, void **ppvObject) \
{ \
CLASSNAME * me = (CLASSNAME *)This; \
- GUID* r; unsigned int i = 0; \
+ const GUID* r; unsigned int i = 0; \
Debug printf(#CLASSNAME "_QueryInterface(%p) called\n", This);\
- if (!ppvObject) return 0x80004003; \
+ if (!ppvObject) return E_POINTER; \
for(r=me->interfaces; i<sizeof(me->interfaces)/sizeof(me->interfaces[0]); r++, i++) \
if(!memcmp(r, riid, sizeof(*r))) \
{ \
@@ -27,7 +26,7 @@ static long STDCALL CLASSNAME ## _QueryInterface(IUnknown * This, \
*ppvObject=This; \
return 0; \
} \
- Debug printf("Query failed!\n"); \
+ Debug printf("Query failed! (GUID: 0x%x)\n", *(const unsigned int*)riid); \
return E_NOINTERFACE; \
} \
\