From d45f35ab57eed27174c4f755043a6485961c7eab Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Thu, 16 Jan 2025 04:47:38 +0100 Subject: [PATCH] #382 Fix colorkey issues in Sanitarium --- src/ddsurface.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ddsurface.c b/src/ddsurface.c index 4fd92c1..8d68052 100644 --- a/src/ddsurface.c +++ b/src/ddsurface.c @@ -909,6 +909,11 @@ HRESULT dds_GetClipper(IDirectDrawSurfaceImpl* This, IDirectDrawClipperImpl** lp HRESULT dds_GetColorKey(IDirectDrawSurfaceImpl* This, DWORD dwFlags, LPDDCOLORKEY lpColorKey) { + if (!(This->flags & DDSD_CKSRCBLT)) + { + return DDERR_NOCOLORKEY; + } + if (dwFlags != DDCKEY_SRCBLT || !lpColorKey) { TRACE(" NOT_IMPLEMENTED dwFlags=%08X, lpColorKey=%p\n", dwFlags, lpColorKey);