diff options
| author | bunnei <bunneidev@gmail.com> | 2022-10-02 03:02:59 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-02 03:02:59 -0700 |
| commit | 80a3a731237472d8d2141243ca322ccf3276483c (patch) | |
| tree | eafea51bbdb8d7ceb9e69cd2d9b1156f1f3c3b9b /src/core/hle/service/nvflinger/nvflinger.cpp | |
| parent | 188932768e1cec5118710e3a044acaf86c4befc2 (diff) | |
| parent | 41e855bd427e07ade6b9292e12bbe5a7c4e76a69 (diff) | |
Merge pull request #8992 from Morph1984/vi-vsync-event
service: vi: Retrieve vsync event once per display
Diffstat (limited to 'src/core/hle/service/nvflinger/nvflinger.cpp')
| -rw-r--r-- | src/core/hle/service/nvflinger/nvflinger.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/hle/service/nvflinger/nvflinger.cpp b/src/core/hle/service/nvflinger/nvflinger.cpp index 9b382bf56..93057e800 100644 --- a/src/core/hle/service/nvflinger/nvflinger.cpp +++ b/src/core/hle/service/nvflinger/nvflinger.cpp @@ -22,6 +22,7 @@ #include "core/hle/service/nvflinger/ui/graphic_buffer.h" #include "core/hle/service/vi/display/vi_display.h" #include "core/hle/service/vi/layer/vi_layer.h" +#include "core/hle/service/vi/vi_results.h" #include "video_core/gpu.h" namespace Service::NVFlinger { @@ -163,15 +164,15 @@ std::optional<u32> NVFlinger::FindBufferQueueId(u64 display_id, u64 layer_id) { return layer->GetBinderId(); } -Kernel::KReadableEvent* NVFlinger::FindVsyncEvent(u64 display_id) { +ResultVal<Kernel::KReadableEvent*> NVFlinger::FindVsyncEvent(u64 display_id) { const auto lock_guard = Lock(); auto* const display = FindDisplay(display_id); if (display == nullptr) { - return nullptr; + return VI::ResultNotFound; } - return &display->GetVSyncEvent(); + return display->GetVSyncEvent(); } VI::Display* NVFlinger::FindDisplay(u64 display_id) { |
