diff options
| author | Liam <byteslice@airmail.cc> | 2024-01-06 23:58:04 -0500 |
|---|---|---|
| committer | Liam <byteslice@airmail.cc> | 2024-01-07 21:47:41 -0500 |
| commit | 1d7fb4cffbc42de1a60fe4fdf4fa60601fe872bb (patch) | |
| tree | c2f6495907b42ade4416c51c2781734d4a3e4313 /src/core/hle/service/vi/vi.cpp | |
| parent | beab2c3fc75497ced4f94ff55b3dfcd4979ea999 (diff) | |
vi: connect vsync event handle lifetime to application display service interface
Diffstat (limited to 'src/core/hle/service/vi/vi.cpp')
| -rw-r--r-- | src/core/hle/service/vi/vi.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/hle/service/vi/vi.cpp b/src/core/hle/service/vi/vi.cpp index 29471abfec..39d5be90d0 100644 --- a/src/core/hle/service/vi/vi.cpp +++ b/src/core/hle/service/vi/vi.cpp @@ -808,6 +808,12 @@ private: rb.Push(result); return; } + if (vsync_event_fetched) { + IPC::ResponseBuilder rb{ctx, 2}; + rb.Push(VI::ResultPermissionDenied); + return; + } + vsync_event_fetched = true; IPC::ResponseBuilder rb{ctx, 2, 1}; rb.Push(ResultSuccess); @@ -901,6 +907,7 @@ private: Nvnflinger::Nvnflinger& nvnflinger; Nvnflinger::HosBinderDriverServer& hos_binder_driver_server; + bool vsync_event_fetched{false}; }; static bool IsValidServiceAccess(Permission permission, Policy policy) { |
