diff --git a/gfx/d3d/d3d.cpp b/gfx/d3d/d3d.cpp index e9c7758373..ab334cef53 100644 --- a/gfx/d3d/d3d.cpp +++ b/gfx/d3d/d3d.cpp @@ -1684,8 +1684,7 @@ static bool d3d_frame(void *data, const void *frame, * can screenshot, etc. */ if (settings->video.black_frame_insertion) { - d3d_swap(d3d, d3dr); - if (d3d->needs_restore) + if (!d3d_swap(d3d, d3dr) || d3d->needs_restore) return true; d3d_clear(d3dr, 0, 0, D3DCLEAR_TARGET, 0, 1, 0); }