summaryrefslogtreecommitdiff
path: root/src/core/hle
diff options
context:
space:
mode:
authorGravatar bunnei2018-02-09 22:17:31 -0500
committerGravatar bunnei2018-02-09 23:33:49 -0500
commit725304094eec2985f7e3b48efa0055171b1e7397 (patch)
tree69d70ae82daf9821da0c58274176225c6d169e91 /src/core/hle
parentIGBPQueueBufferRequestParcel: Don't enforce buffer length. (diff)
downloadyuzu-725304094eec2985f7e3b48efa0055171b1e7397.tar.gz
yuzu-725304094eec2985f7e3b48efa0055171b1e7397.tar.xz
yuzu-725304094eec2985f7e3b48efa0055171b1e7397.zip
nvflinger: (Hack) Use first available buffer if none are found.
Diffstat (limited to 'src/core/hle')
-rw-r--r--src/core/hle/service/nvflinger/buffer_queue.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/hle/service/nvflinger/buffer_queue.cpp b/src/core/hle/service/nvflinger/buffer_queue.cpp
index c7206a683..f90c7ca51 100644
--- a/src/core/hle/service/nvflinger/buffer_queue.cpp
+++ b/src/core/hle/service/nvflinger/buffer_queue.cpp
@@ -40,7 +40,11 @@ u32 BufferQueue::DequeueBuffer(u32 pixel_format, u32 width, u32 height) {
40 return igbp_buffer.format == pixel_format && igbp_buffer.width == width && 40 return igbp_buffer.format == pixel_format && igbp_buffer.width == width &&
41 igbp_buffer.height == height; 41 igbp_buffer.height == height;
42 }); 42 });
43 ASSERT(itr != queue.end()); 43 if (itr == queue.end()) {
44 LOG_CRITICAL(Service_NVDRV, "no free buffers for pixel_format=%d, width=%d, height=%d",
45 pixel_format, width, height);
46 itr = queue.begin();
47 }
44 48
45 itr->status = Buffer::Status::Dequeued; 49 itr->status = Buffer::Status::Dequeued;
46 return itr->slot; 50 return itr->slot;