diff options
| author | 2018-02-09 22:17:31 -0500 | |
|---|---|---|
| committer | 2018-02-09 23:33:49 -0500 | |
| commit | 725304094eec2985f7e3b48efa0055171b1e7397 (patch) | |
| tree | 69d70ae82daf9821da0c58274176225c6d169e91 /src/core/hle | |
| parent | IGBPQueueBufferRequestParcel: Don't enforce buffer length. (diff) | |
| download | yuzu-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.cpp | 6 |
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; |