From 977ce4abbc6d5c6cede53f7c1d109ebd210cda87 Mon Sep 17 00:00:00 2001 From: Subv Date: Mon, 8 Jan 2018 22:24:20 -0500 Subject: [PATCH] VI: Use a Pulse event instead of OneShot for the vblank events. This prevents missing frames if the vblank fires between the DequeueBuffer and Wait(vsync) calls --- src/core/hle/service/vi/vi.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/hle/service/vi/vi.cpp b/src/core/hle/service/vi/vi.cpp index 56aafe6bf2..55bbd45db7 100644 --- a/src/core/hle/service/vi/vi.cpp +++ b/src/core/hle/service/vi/vi.cpp @@ -830,7 +830,7 @@ void BufferQueue::ReleaseBuffer(u32 slot) { Layer::Layer(u64 id, std::shared_ptr queue) : id(id), buffer_queue(std::move(queue)) {} Display::Display(u64 id, std::string name) : id(id), name(std::move(name)) { - vsync_event = Kernel::Event::Create(Kernel::ResetType::OneShot, "Display VSync Event"); + vsync_event = Kernel::Event::Create(Kernel::ResetType::Pulse, "Display VSync Event"); } } // namespace VI