From 8e2ea2345bbf7dd8ce282a0370e968c640ea15cb Mon Sep 17 00:00:00 2001
From: FunkyFr3sh <cc.red.alert.1@googlemail.com>
Date: Fri, 4 Jun 2021 02:44:04 +0200
Subject: [PATCH] flip all backbuffers

---
 src/ddsurface.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/ddsurface.c b/src/ddsurface.c
index e7f2300..dff34ff 100644
--- a/src/ddsurface.c
+++ b/src/ddsurface.c
@@ -842,6 +842,11 @@ HRESULT dds_Flip(IDirectDrawSurfaceImpl *This, LPDIRECTDRAWSURFACE surface, DWOR
         InterlockedExchangePointer(&backbuffer->bitmap, bitmap);
         InterlockedExchangePointer(&backbuffer->hdc, dc);
         LeaveCriticalSection(&g_ddraw->cs);
+
+        if (!surface && This->backbuffer->backbuffer)
+        {
+            dds_Flip(This->backbuffer, NULL, 0);
+        }
     }
 
     if (This->caps & DDSCAPS_PRIMARYSURFACE && g_ddraw->render.run)