diff options
| author | bunnei <bunneidev@gmail.com> | 2020-04-12 11:44:48 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-12 11:44:48 -0400 |
| commit | a9f866264dd80aa7115e54404093a7666c425c55 (patch) | |
| tree | 594a37578141e3db010dc02ba90c5c4776003622 /src/core/hle/service/nvflinger | |
| parent | 3d91dbb21d8fec44ca692a7e9219daa8b3521e08 (diff) | |
| parent | 8c0ba9c6fe3e311e3acc476f4925eae0b1aaa09b (diff) | |
Merge pull request #3606 from ReinUsesLisp/nvflinger
service/vi: Partially implement BufferQueue disconnect
Diffstat (limited to 'src/core/hle/service/nvflinger')
| -rw-r--r-- | src/core/hle/service/nvflinger/buffer_queue.cpp | 7 | ||||
| -rw-r--r-- | src/core/hle/service/nvflinger/buffer_queue.h | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/service/nvflinger/buffer_queue.cpp b/src/core/hle/service/nvflinger/buffer_queue.cpp index 9bcafa5fc..f1e3d832a 100644 --- a/src/core/hle/service/nvflinger/buffer_queue.cpp +++ b/src/core/hle/service/nvflinger/buffer_queue.cpp @@ -126,6 +126,13 @@ void BufferQueue::ReleaseBuffer(u32 slot) { buffer_wait_event.writable->Signal(); } +void BufferQueue::Disconnect() { + queue.clear(); + queue_sequence.clear(); + id = 1; + layer_id = 1; +} + u32 BufferQueue::Query(QueryType type) { LOG_WARNING(Service, "(STUBBED) called type={}", static_cast<u32>(type)); diff --git a/src/core/hle/service/nvflinger/buffer_queue.h b/src/core/hle/service/nvflinger/buffer_queue.h index f674823b0..d5f31e567 100644 --- a/src/core/hle/service/nvflinger/buffer_queue.h +++ b/src/core/hle/service/nvflinger/buffer_queue.h @@ -87,6 +87,7 @@ public: Service::Nvidia::MultiFence& multi_fence); std::optional<std::reference_wrapper<const Buffer>> AcquireBuffer(); void ReleaseBuffer(u32 slot); + void Disconnect(); u32 Query(QueryType type); u32 GetId() const { |
