From 0133030c6a856b18f754557510f0bfef59df4ec7 Mon Sep 17 00:00:00 2001
From: FunkyFr3sh <cc.red.alert.1@googlemail.com>
Date: Thu, 15 Sep 2022 02:12:27 +0200
Subject: [PATCH] add memset blt_clear wrapper

---
 inc/blt.h       | 4 ++++
 src/blt.c       | 7 +++++++
 src/ddsurface.c | 2 +-
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/inc/blt.h b/inc/blt.h
index 34bffa4..220a580 100644
--- a/inc/blt.h
+++ b/inc/blt.h
@@ -65,6 +65,10 @@ void blt_colorkey_mirror_stretch(
     BOOL mirror_left_right,
     int bpp);
 
+void blt_clear(
+    unsigned char* dst, 
+    size_t size);
+
 void blt_colorfill(
     unsigned char* dst,
     int dst_x,
diff --git a/src/blt.c b/src/blt.c
index 192dd94..6f3286b 100644
--- a/src/blt.c
+++ b/src/blt.c
@@ -381,6 +381,13 @@ void blt_colorkey_mirror_stretch(
     }
 }
 
+void blt_clear(
+    unsigned char* dst, 
+    size_t size)
+{
+    memset(dst, 0, size);
+}
+
 void blt_colorfill(
     unsigned char* dst,
     int dst_x,
diff --git a/src/ddsurface.c b/src/ddsurface.c
index f50a980..416e7de 100644
--- a/src/ddsurface.c
+++ b/src/ddsurface.c
@@ -548,7 +548,7 @@ HRESULT dds_Flip(IDirectDrawSurfaceImpl* This, IDirectDrawSurfaceImpl* lpDDSurfa
 
         if (g_ddraw->flipclear)
         {
-            memset(buf, 0, backbuffer->size);
+            blt_clear(buf, backbuffer->size);
         }
 
         LeaveCriticalSection(&g_ddraw->cs);