aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar bunnei <bunneidev@gmail.com>2015-01-07 18:13:48 -0500
committerGravatar bunnei <bunneidev@gmail.com>2015-01-07 18:13:48 -0500
commitb659cac2dc67ee97297049fcfb02c1ce186ffcb0 (patch)
tree8b0bae87f32c632e5d07d826133d56d49c6159f7 /src/core
parente6864a1f411d35cf2a7ccfb5d3e44b717b1e2985 (diff)
parentf7a3f45f1e5e507c81e2ad1a1a33dbeb62e64a99 (diff)
Merge pull request #404 from bunnei/more-frame-synch-fixes
GPU: Toggle active framebuffer each frame
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/service/gsp_gpu.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/hle/service/gsp_gpu.cpp b/src/core/hle/service/gsp_gpu.cpp
index 0127d4ee..26a43217 100644
--- a/src/core/hle/service/gsp_gpu.cpp
+++ b/src/core/hle/service/gsp_gpu.cpp
@@ -291,8 +291,11 @@ static void ExecuteCommand(const Command& command, u32 thread_id) {
// Update framebuffer information if requested
for (int screen_id = 0; screen_id < 2; ++screen_id) {
FrameBufferUpdate* info = GetFrameBufferInfo(thread_id, screen_id);
- if (info->is_dirty)
+
+ if (info->is_dirty) {
SetBufferSwap(screen_id, info->framebuffer_info[info->index]);
+ info->framebuffer_info->active_fb = info->framebuffer_info->active_fb ^ 1;
+ }
info->is_dirty = false;
}