@@ -1032,6 +1032,11 @@ BOOL WINAPI fake_StretchBlt(
10321032{
10331033 HWND hwnd = WindowFromDC (hdcDest );
10341034
1035+ if (g_ddraw .ref && g_ddraw .hwnd && hwnd == g_ddraw .hwnd && !g_ddraw .primary )
1036+ {
1037+ InterlockedExchange (& g_ddraw .render .screen_updated , TRUE);
1038+ }
1039+
10351040 char class_name [MAX_PATH ] = { 0 };
10361041
10371042 if (g_ddraw .ref && g_ddraw .hwnd && hwnd && hwnd != g_ddraw .hwnd )
@@ -1140,6 +1145,11 @@ BOOL WINAPI fake_BitBlt(
11401145{
11411146 HWND hwnd = WindowFromDC (hdc );
11421147
1148+ if (g_ddraw .ref && g_ddraw .hwnd && hwnd == g_ddraw .hwnd && !g_ddraw .primary )
1149+ {
1150+ InterlockedExchange (& g_ddraw .render .screen_updated , TRUE);
1151+ }
1152+
11431153 char class_name [MAX_PATH ] = { 0 };
11441154
11451155 if (g_ddraw .ref && g_ddraw .hwnd && hwnd && hwnd != g_ddraw .hwnd )
@@ -1236,6 +1246,11 @@ int WINAPI fake_SetDIBitsToDevice(
12361246{
12371247 HWND hwnd = WindowFromDC (hdc );
12381248
1249+ if (g_ddraw .ref && g_ddraw .hwnd && hwnd == g_ddraw .hwnd && !g_ddraw .primary )
1250+ {
1251+ InterlockedExchange (& g_ddraw .render .screen_updated , TRUE);
1252+ }
1253+
12391254 char class_name [MAX_PATH ] = { 0 };
12401255
12411256 if (g_ddraw .ref && g_ddraw .hwnd && hwnd && hwnd != g_ddraw .hwnd )
@@ -1326,6 +1341,11 @@ int WINAPI fake_StretchDIBits(
13261341{
13271342 HWND hwnd = WindowFromDC (hdc );
13281343
1344+ if (g_ddraw .ref && g_ddraw .hwnd && hwnd == g_ddraw .hwnd && !g_ddraw .primary )
1345+ {
1346+ InterlockedExchange (& g_ddraw .render .screen_updated , TRUE);
1347+ }
1348+
13291349 char class_name [MAX_PATH ] = { 0 };
13301350
13311351 if (g_ddraw .ref && g_ddraw .hwnd && hwnd && hwnd != g_ddraw .hwnd )
0 commit comments