diff options
| author | bunnei <bunneidev@gmail.com> | 2015-02-10 19:21:48 -0500 | 
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2015-02-10 19:21:48 -0500 | 
| commit | 76e7d41f88347c48b0da396872775cbe461df537 (patch) | |
| tree | cc174a66acd8904a9e909c792eb8092f84e360b8 | |
| parent | ca22ee32393f98ddf43286857aee84827ca64768 (diff) | |
| parent | 9eae2400c081e463a9441cb94639c7a8c6c13d73 (diff) | |
Merge pull request #552 from bunnei/setbufferswap-fix
GSP SetBufferSwap fix
| -rw-r--r-- | src/core/hle/service/gsp_gpu.cpp | 7 | 
1 files changed, 3 insertions, 4 deletions
diff --git a/src/core/hle/service/gsp_gpu.cpp b/src/core/hle/service/gsp_gpu.cpp index 495c117ee..027b9fa92 100644 --- a/src/core/hle/service/gsp_gpu.cpp +++ b/src/core/hle/service/gsp_gpu.cpp @@ -227,14 +227,13 @@ void SignalInterrupt(InterruptId interrupt_id) {          // Update framebuffer information if requested          // TODO(yuriks): Confirm where this code should be called. It is definitely updated without          //               executing any GSP commands, only waiting on the event. -        for (int screen_id = 0; screen_id < 2; ++screen_id) { +        int screen_id = (interrupt_id == InterruptId::PDC0) ? 0 : (interrupt_id == InterruptId::PDC0) ? 1 : -1; +        if (screen_id != -1) {              FrameBufferUpdate* info = GetFrameBufferInfo(thread_id, screen_id); -              if (info->is_dirty) {                  SetBufferSwap(screen_id, info->framebuffer_info[info->index]); +                info->is_dirty = false;              } - -            info->is_dirty = false;          }      }      g_interrupt_event->Signal();  | 
