From 7ec7f853d232c4a753bfaf91b95a9a92a1008b33 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Sat, 17 Nov 2018 09:06:11 +0100 Subject: [PATCH] fix DirectDrawSurface::QueryInterface --- src/surface.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/surface.c b/src/surface.c index 36fd048..dae3106 100644 --- a/src/surface.c +++ b/src/surface.c @@ -30,6 +30,13 @@ HRESULT __stdcall ddraw_surface_QueryInterface(IDirectDrawSurfaceImpl *This, REF { printf("DirectDrawSurface::QueryInterface(This=%p, riid=%08X, obj=%p) ???\n", This, (unsigned int)riid, obj); + if (riid && !IsEqualGUID(&IID_IDirectDrawSurface, riid)) + { + printf(" IID_IDirectDrawSurfaceX\n"); + + IDirectDrawSurface_AddRef(This); + } + *obj = This; return S_OK;