Direct3D now always calls EndScene if BeginScene was successful.

This commit is contained in:
OBattler
2017-11-20 09:57:45 +01:00
parent fa6ef13050
commit 87c2174f7e

View File

@@ -121,6 +121,7 @@ static void
d3d_blit_fs(int x, int y, int y1, int y2, int w, int h)
{
HRESULT hr = D3D_OK;
HRESULT hbsr = D3D_OK;
VOID* pVoid;
D3DLOCKED_RECT dr;
RECT w_rect;
@@ -191,7 +192,7 @@ d3d_blit_fs(int x, int y, int y1, int y2, int w, int h)
hr = v_buffer->Unlock();
if (hr == D3D_OK)
hr = d3ddev->BeginScene();
hbsr = hr = d3ddev->BeginScene();
if (hr == D3D_OK) {
if (hr == D3D_OK)
@@ -211,11 +212,11 @@ d3d_blit_fs(int x, int y, int y1, int y2, int w, int h)
if (hr == D3D_OK)
hr = d3ddev->SetTexture(0, NULL);
if (hr == D3D_OK)
hr = d3ddev->EndScene();
}
if (hbsr == D3D_OK)
hr = d3ddev->EndScene();
if (hr == D3D_OK)
hr = d3ddev->Present(NULL, NULL, d3d_device_window, NULL);
@@ -228,6 +229,7 @@ static void
d3d_blit(int x, int y, int y1, int y2, int w, int h)
{
HRESULT hr = D3D_OK;
HRESULT hbsr = D3D_OK;
VOID* pVoid;
D3DLOCKED_RECT dr;
RECT r;
@@ -284,7 +286,7 @@ d3d_blit(int x, int y, int y1, int y2, int w, int h)
hr = v_buffer->Unlock(); // unlock the vertex buffer
if (hr == D3D_OK)
hr = d3ddev->BeginScene();
hbsr = hr = d3ddev->BeginScene();
if (hr == D3D_OK) {
if (hr == D3D_OK)
@@ -301,11 +303,11 @@ d3d_blit(int x, int y, int y1, int y2, int w, int h)
if (hr == D3D_OK)
hr = d3ddev->SetTexture(0, NULL);
if (hr == D3D_OK)
hr = d3ddev->EndScene();
}
if (hbsr == D3D_OK)
hr = d3ddev->EndScene();
if (hr == D3D_OK)
hr = d3ddev->Present(NULL, NULL, d3d_hwnd, NULL);